Saya baru-baru ini mulai menggunakan c # pindah dari Jawa. Sepertinya saya tidak dapat menemukan cara mendapatkan item daftar berdasarkan indeks. Di java untuk mendapatkan item pertama dari daftar itu adalah:
list1.get(0);
Apa yang setara dalam c #?
Jawaban:
Mengasumsikan tipe daftar memiliki pengindeks ditentukan.
sumber
Anda bisa menggunakan metode ekstensi ElementAt pada daftar.
Sebagai contoh:
sumber
using System.Linq;
.myList[0]
notasi standar ?.ElementAtOrDefault();
myCollectionWhichMightBeNull?.ElementAt(0)
atau untuk melindungi elemen yang tidak ada:myCollection.ElementAtOrDefault(0)?.SomeProperty
Visual Basic, C #, dan C ++ semuanya memiliki sintaks untuk mengakses properti Item tanpa menggunakan namanya. Sebagai gantinya, variabel yang berisi Daftar digunakan seolah-olah itu adalah array.
Lihat misalnya: https://msdn.microsoft.com/en-us/library/0ebtbkkc(v=vs.110).aspx
sumber
Pertanyaan lama, tetapi saya melihat bahwa utas ini cukup baru-baru ini aktif, jadi saya akan melanjutkan dan melemparkan dua sen saya:
Persis seperti yang dikatakan Mitch. Dengan asumsi pengindeksan yang tepat, Anda bisa melanjutkan dan menggunakan notasi braket persegi seolah-olah Anda mengakses array. Selain menggunakan indeks numerik, jika anggota Anda memiliki nama tertentu, Anda dapat sering melakukan pencarian / akses simultan dengan mengetikkan sesuatu seperti:
Semakin banyak Anda tahu, bukan?
sumber
List
Struktur data .NET adalahArray
dalam "shell yang bisa berubah-ubah".Jadi Anda dapat menggunakan indeks untuk mengakses elemen-elemennya seperti:
Dimulai dengan C # 8.0 yang dapat Anda gunakan
Index
danRange
kelas untuk mengakses elemen. Mereka menyediakan pengaksesan dari akhir urutan atau hanya mengakses bagian tertentu dari urutan:Anda dapat menggabungkan indeks dan rentang bersama-sama:
Anda juga dapat menggunakan
ElementAt
metode LINQ tetapi untuk 99% kasus ini benar-benar tidak perlu dan hanya solusi kinerja yang lambat.sumber
Anda dapat menggunakan indeks untuk mengakses elemen daftar
sumber