SortedList.GetEnumerator Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mengembalikan IDictionaryEnumerator objek yang berulang melalui SortedList objek.
public:
virtual System::Collections::IDictionaryEnumerator ^ GetEnumerator();
public virtual System.Collections.IDictionaryEnumerator GetEnumerator ();
abstract member GetEnumerator : unit -> System.Collections.IDictionaryEnumerator
override this.GetEnumerator : unit -> System.Collections.IDictionaryEnumerator
Public Overridable Function GetEnumerator () As IDictionaryEnumerator
Mengembalikan
Objek IDictionaryEnumerator untuk SortedList objek .
Penerapan
Keterangan
Pernyataan foreach
bahasa C# (for each
dalam Visual Basic) menyembunyikan kompleksitas enumerator. Oleh karena itu, penggunaan foreach
disarankan, alih-alih secara langsung memanipulasi enumerator.
Enumerator dapat digunakan untuk membaca data dalam koleksi, tetapi tidak dapat digunakan untuk memodifikasi koleksi yang mendasar.
Awalnya, enumerator diposisikan sebelum elemen pertama dalam koleksi. Reset juga membawa enumerator kembali ke posisi ini. Pada posisi ini, Current tidak terdefinisi. Oleh karena itu, Anda harus memanggil MoveNext untuk memajukan enumerator ke elemen pertama koleksi sebelum membaca nilai Current.
Current mengembalikan objek yang sama hingga atau MoveNextReset dipanggil. MoveNextCurrent mengatur ke elemen berikutnya.
Jika MoveNext melewati akhir koleksi, enumerator diposisikan setelah elemen terakhir dalam koleksi dan MoveNext mengembalikan false
. Ketika enumerator berada di posisi ini, panggilan berikutnya untuk MoveNext juga mengembalikan false
. Jika panggilan terakhir untuk MoveNext dikembalikan false
, Current tidak ditentukan. Untuk mengatur Current ke elemen pertama koleksi lagi, Anda dapat memanggil Reset diikuti dengan MoveNext.
Enumerator tetap valid selama koleksi tetap tidak berubah. Jika perubahan dilakukan pada koleksi, seperti menambahkan, memodifikasi, atau menghapus elemen, enumerator tidak valid dan perilakunya tidak terdefinisi.
Enumerator tidak memiliki akses eksklusif ke koleksi; oleh karena itu, menghitung melalui koleksi secara intrinsik bukan prosedur aman utas. Untuk menjamin keamanan utas selama enumerasi, Anda dapat mengunci koleksi selama seluruh enumerasi. Untuk memungkinkan koleksi diakses oleh beberapa utas untuk membaca dan menulis, Anda harus menerapkan sinkronisasi Anda sendiri.
Metode ini adalah O(1)
operasi.