Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 17820|Jawab: 0

[Sumber] Jenis antarmuka atau metode yang dapat dilalui dengan foreach perlu diterapkan.

[Salin tautan]
Diposting pada 26/09/2015 10.37.46 | | |
Jawaban: Objek yang dapat dilalui oleh foreach harus berupa objek koleksi atau array, yang merupakan jenis yang mengimplementasikan superinterface IEnumerator atau metode GetEnumerator yang dideklarasikan
Q:
Tetapi ketika saya biasanya menggunakan foreach in, saya menggunakannya secara langsung, dan tidak ada masalah. Bolehkah saya bertanya, mengapa demikian? Jika Anda ingin mengimplementasikan jenis antarmuka super IEnumerator atau metode GetEnumerator yang dideklarasikan seperti yang diajukan dalam pertanyaan, apa yang harus Anda lakukan? Terima kasih
Jawaban: Saat menggunakan foreach in, kami biasanya menggunakan kelas koleksi yang ditentukan sistem (mengimplementasikan antarmuka ICollection). Misalnya, arrayList, stringDictionary, array, dll. Ini dikemas oleh platform dan hampir mengimplementasikan antarmuka IEnumerator. Agar kelas yang Anda tulis dapat foreach pada saat yang sama, Anda harus mengimplementasikan antarmuka saat menulis kelas. Ini memungkinkan untuk setiap traversal setelahnya. Misalnya, tentukan kelas orang dan terapkan antarmuka IEnumerator. Jika ada array People[] tempPeople, maka Anda dapat menggunakan: foreach( p di tempPeople){ console.writeline(p.name); Ini menghilangkan masalah menggunakan loop for. Adapun cara mengimplementasikan antarmuka Iemumerator. Periksa saja MSDN. Anda juga dapat mencari buku yang lebih tebal.





Mantan:Pertanyaan algoritma wawancara 1, 1, 2, 3, 5, 8, 13, 21, 34...... cari tahu apa itu digit ke-30, dan gunakan algoritme rekursif untuk mengetahuinya
Depan:Apa asal awan gelap yang keluar dari Ctrip dan kebocoran lainnya?
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com