Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah Fungsi Agregat LINQ Berfungsi untuk Penjumlahan, Penggabungan dan Pendaraban?

Bagaimanakah Fungsi Agregat LINQ Berfungsi untuk Penjumlahan, Penggabungan dan Pendaraban?

DDD
Lepaskan: 2024-12-26 02:11:09
asal
614 orang telah melayarinya

How Does LINQ's Aggregate Function Work for Summation, Concatenation, and Multiplication?

LINQ Aggregate: Penjelasan Komprehensif

Fungsi LINQ Aggregate menjalankan operasi pada jujukan elemen sambil mengambil kira keputusan operasi sebelumnya. Pada dasarnya, ia secara berulang memproses setiap elemen dalam jujukan, mengumpul hasil operasi.

Penerangan dan Contoh

Untuk memahami Agregat, pertimbangkan takrifan dan contoh berikut:

  • Penjumlahan: Mengira jumlah siri nombor.
var nums = new[] { 1, 2, 3, 4 };
var sum = nums.Aggregate((a, b) => a + b);
Console.WriteLine(sum); // Output: 10 (1 + 2 + 3 + 4)
Salin selepas log masuk
  • Penggabungan Rentetan: Mencipta senarai yang dipisahkan koma daripada tatasusunan rentetan.
var chars = new[] { "a", "b", "c", "d" };
var csv = chars.Aggregate((a, b) => a + "," + b);
Console.WriteLine(csv); // Output: a,b,c,d
Salin selepas log masuk
  • Pendaraban dengan Benih: Bermula dengan nilai benih dan darabkannya dengan setiap elemen dalam urutan.
var multipliers = new[] { 10, 20, 30, 40 };
var multiplied = multipliers.Aggregate(5, (a, b) => a * b);
Console.WriteLine(multiplied); // Output: 1200000 ((((5 * 10) * 20) * 30) * 40)
Salin selepas log masuk

Contoh Terperinci

Contoh 1: Menjumlahkan Nombor

var nums = new[] { 1, 2, 3, 4 };
var sum = nums.Aggregate((a, b) => a + b);
Salin selepas log masuk

Penjelasan:

  • The Fungsi agregat bermula dengan dua elemen pertama, 1 dan 2, dan melakukan penambahan (1 2 = 3).
  • Hasil (3) menjadi penumpuk (a) untuk langkah seterusnya.
  • Penumpuk kemudiannya digabungkan dengan elemen seterusnya, 3, menghasilkan penumpuk baharu (6).
  • Proses ini berterusan sehingga semua elemen telah diproses, mengumpul jumlah (6 4 = 10).

Contoh 2: Mencipta CSV daripada Rentetan

var chars = new[] { "a", "b", "c", "d" };
var csv = chars.Aggregate((a, b) => a + "," + b);
Salin selepas log masuk

Penjelasan :

  • Seperti contoh sebelumnya, Agregat berulang jujukan.
  • Ia bermula dengan menggabungkan dua elemen pertama ("a" dan "b") menjadi "a,b".
  • Penumpuk ("a,b") kemudiannya digabungkan dengan elemen seterusnya ("c") untuk menjadi "a,b,c".
  • Hasil akhir ialah rentetan dengan semua elemen dipisahkan dengan koma ("a,b,c,d").

Contoh 3: Mendarab Nombor dengan Benih

var multipliers = new[] { 10, 20, 30, 40 };
var multiplied = multipliers.Aggregate(5, (a, b) => a * b);
Salin selepas log masuk

Penjelasan:

  • Agregat menerima lebihan beban apabila nilai "benih" (5) disediakan.
  • Benih ialah nilai awal penumpuk.
  • Fungsi mendarab penumpuk dengan elemen pertama (5 * 10 = 50).
  • Terhasil penumpuk (50) kemudiannya didarab dengan unsur seterusnya (50 * 20 = 1000).
  • Ini proses diteruskan, akhirnya mendarabkan semua elemen dan benih (1000 * 40 = 1200000).

Kesimpulan

LINQ Aggregate menyediakan cara yang berkuasa untuk melaksanakan pelbagai operasi pada jujukan, termasuk penjumlahan, penggabungan, dan pengumpulan berganda. Kepelbagaian dan kemudahan penggunaannya menjadikannya alat yang berharga untuk manipulasi data dalam C# dan bahasa .NET yang lain.

Atas ialah kandungan terperinci Bagaimanakah Fungsi Agregat LINQ Berfungsi untuk Penjumlahan, Penggabungan dan Pendaraban?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan