Rumah >pembangunan bahagian belakang >C++ >Bagaimana Menjumlahkan Nilai Harta daripada Senarai Objek dalam C#?

Bagaimana Menjumlahkan Nilai Harta daripada Senarai Objek dalam C#?

Patricia Arquette
Patricia Arquetteasal
2025-01-09 06:32:42484semak imbas

How to Sum a Property's Values from a List of Objects in C#?

Bagaimana untuk mengira jumlah atribut dalam senarai objek dalam C#?

Mengira jumlah harta tertentu adalah keperluan biasa apabila bekerja dengan senarai objek. C# menyediakan fungsi Sum untuk tatasusunan dan senarai, yang memudahkan untuk mengira nilai agregat.

Untuk menggambarkan penggunaan Jumlah dalam objek, pertimbangkan senario berikut:

Memandangkan senarai objek, setiap satunya mengandungi sifat Amaun, bagaimana anda mendapatkan semula jumlah keseluruhan menggunakan fungsi Jumlah?

Isu tatabahasa

Cuba menggunakan myList.amount.Sum() akan mengakibatkan ralat sintaks. Sebabnya ialah jumlah hartanah tidak boleh diakses terus daripada senarai itu sendiri. Sebaliknya, anda perlu menentukan perwakilan atau ungkapan lambda untuk mengakses sifat Amaun setiap objek dalam senarai.

Penyelesaian

Untuk menyelesaikan masalah ini, anda boleh menggunakan ungkapan lambda untuk mengekstrak sifat Amaun setiap objek dalam senarai, dan kemudian gunakan fungsi Sum pada koleksi nilai angka yang terhasil. Berikut ialah contoh:

<code class="language-csharp">using System.Linq;
...
double total = myList.Sum(item => item.Amount);</code>

Dalam contoh ini, ungkapan lambda item => item.Amount mendapatkan semula sifat Amaun setiap item dalam myList. Fungsi Sum kemudian menggunakan operasi jumlah pada set nilai Amaun yang diekstrak, dengan berkesan mengira jumlah amaun.

Atas ialah kandungan terperinci Bagaimana Menjumlahkan Nilai Harta daripada Senarai Objek dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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