Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah LINQ Boleh Meningkatkan Kecekapan Penggabungan Rentetan?
Menggabungkan Rentetan Secara Cekap dengan LINQ
Pendekatan tradisional untuk menggabungkan rentetan melibatkan penggunaan StringBuilder dan gelung, seperti yang ditunjukkan dalam coretan kod yang diberikan . Walaupun kaedah ini berkesan, kaedah ini boleh menjadi kasar dan tidak cekap untuk set data yang besar. LINQ menawarkan penyelesaian yang lebih ringkas dan berkemungkinan lebih pantas untuk tugasan ini.
Menggunakan kaedah Agregat LINQ, kita boleh menggabungkan rentetan seperti berikut:
string[] words = { "one", "two", "three" }; var res = words.Aggregate( "", // Start with an empty string for the empty list case (current, next) => current + ", " + next); Console.WriteLine(res);
Ungkapan ini mencipta rentetan baharu dengan menggabungkan setiap elemen daripada tatasusunan perkataan dengan koma dan ruang. Pertanyaan agregat dilaksanakan serta-merta, tidak seperti pelaksanaan tertunda dalam kebanyakan operasi LINQ lain.
Satu lagi varian pendekatan ini melibatkan penggunaan StringBuilder dalam kaedah Agregat untuk kecekapan memori:
var res = words.Aggregate( new StringBuilder(), (current, next) => current.Append(current.Length == 0? "" : ", ").Append(next)) .ToString();
Varian ini menawarkan prestasi serupa dengan String.Join, yang merupakan satu lagi pilihan untuk menggabungkan rentetan dengan cekap.
Atas ialah kandungan terperinci Bagaimanakah LINQ Boleh Meningkatkan Kecekapan Penggabungan Rentetan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!