Apa itu Iterator di Java dan Bagaimana menggunakannya?



Iterator di blog Java akan memberi anda pengenalan yang tepat tentang apa itu iterator dan cara menggunakannya di Java dengan beberapa contoh

Sekiranya anda mengusahakan a dan katakan anda mahu mencetak urutan, di situlah Iterator di Java muncul dalam gambar. Dengan cara ini anda boleh mendapatkan urutan walaupun tanpa menambahkan pernyataan cetak untuk setiap baris. Oleh itu, mari belajar mengenai Iterator di .

cara melaksanakan senarai terpaut di c

Berikut adalah topik yang akan saya bahas dalam modul ini:





Mari kita mulakan!

Apakah iterator itu?

Java terutamanya menyokong empat kursor yang berbeza. Mereka adalah:



  • Penghitungan
  • Pengulangan
  • Penyenaraikan Senarai
  • Pemisah

Setiap kursor Java ini mempunyai beberapa kelebihan dan kekurangan. Kami akan memberi tumpuan kepada Iterator dalam artikel ini.

Sekarang, apakah iterator di Java?

Pengulangan adalah antara muka yang tergolong dalam kerangka koleksi. Ia membolehkan anda melintasi koleksi, mengakses elemen data dan membuang elemen data koleksi.



Ia juga dianggap sebagai iterator Universal kerana anda boleh menggunakannya pada mana-mana objek. Dengan menggunakan Iterator, anda boleh melakukan operasi membaca dan membuang. Ini adalah versi yang lebih baik dari Penghitungan dengan fungsi tambahan keupayaan membuang unsur.

Kaedah Iterator Java

Iterator Java mempunyai 4 kaedah secara keseluruhan. Mari kita fahami secara terperinci.

cara menggunakan hover di css
KaedahPenerangan
forEachRemaining (Kepenggunaan)Ia melakukan tindakan pada setiap elemen sehingga dan kecuali semua elemen telah diproses. Juga sehingga pengecualian dilemparkan oleh tindakan.
hasNext ()Ini kembali nilai sebenar sekiranya sebilangan besar elemen ditemui semasa lelaran.
seterusnya ()Ini kembali elemen yang dinyatakan seterusnya semasa lelaran.
buang ()Kaedah ini rmengeluarkan unsur semasa. Balingan PengecualianStateElegal jika percubaan dilakukan untuk membuang panggilan () yang tidak didahului oleh panggilan ke sebelah ().
boolean hasNext ()Ini kembali benar jika lelaran mempunyai lebih banyak unsur.

Contoh:

kelas Kaedah {public static void main (String [] args) ArrayList list = ArrayList baru () list.add ('E') list.add ('D') list.add ('U') list.add ('R list.add ('E') list.add ('K') list.add ('A') // Iterator untuk melintasi senarai Iterator iterator = list.iterator () System.out.println ('Elemen senarai : ') while (iterator.hasNext ()) System.out.print (iterator.next () +' ') System.out.println ()}}

Keluaran: EDUREKA

Mari kita lihat ListIterator di Java.

ListIterator di Jawa

Penyenaraikan Senarai di Java adalah Iterator yang membolehkan pengguna melintasi Koleksi di kedua arah. Ia mengandungi kaedah berikut:

KaedahKaedah & Penerangan
batal tambah (Objek obj) Memasukkan obj ke dalam senarai di hadapan elemen yang akan dikembalikan oleh panggilan seterusnya ke seterusnya ().
boolean hasNext () Kembali benar jika ada unsur seterusnya. Jika tidak, mengembalikan palsu.
boolean hasPre sebelumnya () Mengembalikan benar jika ada unsur sebelumnya. Jika tidak, mengembalikan palsu.
Objek seterusnya () Mengembalikan elemen seterusnya. NoSuchElementException dilemparkan jika tidak ada unsur seterusnya.
int nextIndex () Mengembalikan indeks elemen seterusnya. Sekiranya tidak ada elemen seterusnya, kembalikan ukuran senarai.
Objek sebelumnya () Mengembalikan elemen sebelumnya. NoSuchElementException dilemparkan jika tidak ada unsur sebelumnya.
int sebelumnyaIndex () Mengembalikan indeks elemen sebelumnya. Sekiranya tidak ada unsur sebelumnya, pulangkan -1.
batal hapus () Mengeluarkan elemen semasa dari senarai. IllegalStateException dilemparkan jika remove () dipanggil sebelum berikutnya () atau sebelumnya () dipanggil.
set kosong (Objek obj) Menetapkan obj ke elemen semasa. Ini adalah elemen yang terakhir dikembalikan oleh panggilan ke seterusnya () atau sebelumnya ().

Contoh:

senarai kelas awam {public static void main (String args []) {// Buat senarai tatasusunan ArrayList al = ArrayList baru () // tambahkan elemen ke dalam senarai array al.add ('E') al.add ('D ') al.add (' U ') al.add (' R ') al.add (' E ') al.add (' K ') al.add (' A ') // Gunakan iterator untuk memaparkan kandungan al System.out.print ('Isi asal al:') Iterator itr = al.iterator () manakala (itr.hasNext ()) {Object element = itr.next () System.out.print (element + '' ) System.out.println () // Ubahsuai objek yang dilancarkan ListIterator litr = al.listIterator () manakala (litr.hasNext ()) {Object element = litr.next () litr.set (element + '+') } System.out.print ('Isi kandungan al:') itr = al.iterator () manakala (itr.hasNext ()) {Object element = itr.next () System.out.print (element + '') } System.out.println () // Sekarang, paparkan senarai ke belakang System.out.print ('Senarai diubah ke belakang:') sementara (litr.hasPre sebelumnya ()) {Object element = litr.pre sebelumnya () System.out. cetak (elemen + '')} System.out.println ()}}

Pengeluaran:

Asalkandungan al:E D U R E K A
Diubah suaikandungan al:ADALAH+D+U+R+ADALAH+KE+ A +
Diubah suaisenaraikan ke belakang:KE+KE+ADALAH+R+U+D+ DAN +

Sekarang, mari kita lihat kelebihan dan batasan antara muka iterator ini di Java.

Kelebihan Iterator di Jawa

Iterator di Java mempunyai kelebihan berikut.

  • Anda boleh menggunakan iterator ini untuk mana-mana kelas Koleksi.
  • Iterator di Java menyokong kedua-duanya membaca begitu juga buang operasi.
  • Sekiranya anda menggunakan untuk gelung kamu tidak boleh kemas kini (tambah / hapus) Koleksi sedangkan dengan bantuan iterator anda boleh mengemas kini Koleksi dengan mudah.
  • Ini adalah Kursor Sejagat untuk API Koleksi.
  • Nama kaedahnya sangat mudah dan sangat senang digunakan.

Batasan Iterator di Jawa

Iterator di Java mempunyai kelemahan berikut:

  • Anda hanya boleh melakukan lelaran arah ke hadapan, iaitu Uni-Directional Iterator.
  • Penggantian dan penambahan elemen baru tidak disokong oleh Iterator.
  • ListIterator adalah iterator paling kuat tetapi hanya boleh digunakan untuk kelas yang dilaksanakan List. Oleh itu, ia bukan iterator Universal.
  • Apabila anda menggunakan Operasi CRUD, ia tidak menyokong operasi membuat dan mengemas kini.
  • Apabila anda membandingkannya dengan Spliterator, ia tidak membiarkan anda mengulang elemen selari. Ini bermaksud hanya menyokong lelaran Berurutan.
  • Ia tidak menyokong prestasi yang lebih baik untuk mengulangi jumlah data yang banyak.

Ini membawa kita ke akhir artikel ini di mana kita telah mengetahui bagaimana iterator di Java berfungsi. Semoga anda jelas dengan semua yang telah dikongsi dengan anda dalam tutorial ini.

cara menyambungkan pangkalan data mysql di java

Jika anda menganggap artikel ini mengenai 'Iterator in Java' relevan, lihat syarikat pembelajaran dalam talian yang dipercayai dengan rangkaian lebih daripada 250,000 pelajar berpuas hati yang tersebar di seluruh dunia.

Kami di sini untuk membantu anda dalam setiap langkah dalam perjalanan anda, selain ini, kami menyediakan kurikulum yang dirancang untuk pelajar dan profesional yang ingin menjadi Pembangun Java. Kursus ini dirancang untuk memberi Anda awal dalam pengaturcaraan Java dan melatih anda untuk konsep Java teras dan maju bersama dengan pelbagai kerangka kerja Java seperti Hibernate & Spring.

Sekiranya anda menjumpai sebarang pertanyaan, jangan ragu untuk mengajukan semua pertanyaan anda di ruangan komen 'Iterator in Java' dan pasukan kami dengan senang hati akan menjawabnya.