Apa itu Iterator di Java dan Bagaimana Cara Menggunakannya?



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

Jika Anda sedang mengerjakan file dan katakanlah Anda ingin mencetak urutan, di situlah Iterator di Java hadir. Dengan cara ini Anda bisa mendapatkan urutan bahkan tanpa menambahkan pernyataan cetak untuk setiap baris. Jadi, mari pelajari tentang Iterator .

Di bawah ini adalah topik yang akan saya bahas dalam modul ini:





Ayo mulai!

Apa itu iterator?

Java terutama mendukung empat kursor berbeda. Yaitu:



  • Pencacahan
  • Iterator
  • ListIterator
  • Pembelah

Masing-masing kursor Java ini memiliki beberapa kelebihan dan kekurangan. Kami akan fokus pada Iterator di artikel ini.

Sekarang, apa iterator di Java?

Iterator adalah antarmuka milik kerangka koleksi. Ini memungkinkan Anda melintasi koleksi, mengakses elemen data, dan menghapus elemen data dari koleksi.



menerapkan daftar tertaut di c

Ini juga dianggap sebagai iterator Universal karena Anda dapat menerapkannya ke semua obyek. Dengan menggunakan Iterator, Anda dapat melakukan operasi baca dan hapus. Ini adalah versi perbaikan dari Pencacahan dengan fungsionalitas tambahan dari kemampuan menghapus suatu elemen.

Metode Iterator Java

Iterator Java memiliki total 4 metode. Mari kita pahami secara detail.

MetodeDeskripsi
forEachRemaining (Consumeraction)Ia melakukan tindakan pada setiap elemen sampai dan kecuali semua elemen telah diproses. Juga sampai pengecualian dilemparkan oleh tindakan tersebut.
hasNext ()Ini kembali nilai sebenarnya jika sejumlah besar elemen ditemukan selama iterasi.
lanjut()Ini kembali elemen yang ditentukan berikutnya selama iterasi.
menghapus()Metode ini rmemancarkan elemen saat ini. Melempar IllegalStateException jika upaya dilakukan untuk memanggil remove () yang tidak didahului oleh panggilan ke next ().
boolean hasNext ()Ini mengembalikan nilai true jika iterasi memiliki lebih banyak elemen.

Contoh:

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

Keluaran: EDUREKA

Mari kita lihat ListIterator di Java.

ListIterator di Java

apa contoh kelas di java

ListIterator di Java adalah Iterator yang memungkinkan pengguna untuk melintasi Koleksi di kedua arah. Ini berisi metode berikut:

MetodeMetode & Deskripsi
void add (Object obj) Menyisipkan obj ke dalam daftar di depan elemen yang akan dikembalikan oleh panggilan berikutnya ke next ().
boolean hasNext () Mengembalikan nilai benar jika ada elemen berikutnya. Jika tidak, mengembalikan false.
boolean hasPrevious () Mengembalikan nilai benar jika ada elemen sebelumnya. Jika tidak, mengembalikan false.
Objek berikutnya () Mengembalikan elemen berikutnya. NoSuchElementException muncul jika tidak ada elemen berikutnya.
int nextIndex () Mengembalikan indeks dari elemen berikutnya. Jika tidak ada elemen berikutnya, kembalikan ukuran daftar.
Objek sebelumnya () Mengembalikan elemen sebelumnya. NoSuchElementException muncul jika tidak ada elemen sebelumnya.
int beforeIndex () Mengembalikan indeks dari elemen sebelumnya. Jika tidak ada elemen sebelumnya, kembalikan -1.
batal hapus () Menghapus elemen saat ini dari daftar. IllegalStateException dilemparkan jika remove () dipanggil sebelum next () atau prior () dipanggil.
void set (Object obj) Menetapkan obj ke elemen saat ini. Ini adalah elemen yang terakhir dikembalikan oleh panggilan ke next () atau sebelumnya ().

Contoh:

public class Daftar {public static void main (String args []) {// Buat daftar array ArrayList al = new ArrayList () // tambahkan elemen ke daftar 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 menampilkan konten al System.out.print ('Isi asli dari al:') Iterator itr = al.iterator () sementara (itr.hasNext ()) {Object element = itr.next () System.out.print (elemen + '' )} System.out.println () // Modifikasi objek yang diiterasi ListIterator litr = al.listIterator () while (litr.hasNext ()) {Object element = litr.next () litr.set (element + '+') } System.out.print ('Konten yang dimodifikasi dari al:') itr = al.iterator () sementara (itr.hasNext ()) {Object element = itr.next () System.out.print (elemen + '') } System.out.println () // Sekarang, tampilkan daftar mundur System.out.print ('Modified list backwards:') while (litr.hasPrevious ()) {Object element = litr.previous () System.out. cetak (elemen + '')} System.out.println ()}}

Keluaran:

Asliisi dari al:E D U R E K A
Diubahisi dari al:AKU S+D+U+R+AKU S+UNTUK+ A +
Diubahdaftar mundur:UNTUK+UNTUK+AKU S+R+U+D+ DAN +

apa itu pemindai di java

Sekarang, mari kita lihat keuntungan dan batasan antarmuka iterator di Java ini.

Keuntungan Iterator di Java

Iterator di Java memiliki keunggulan sebagai berikut.

  • Anda dapat menggunakan iterator ini untuk kelas Koleksi apa pun.
  • Iterator di Java mendukung keduanya Baca sebaik menghapus operasi.
  • Jika Anda menggunakan untuk loop kamu tidak bisa perbarui (tambah / hapus) Koleksi sedangkan dengan bantuan iterator Anda dapat dengan mudah memperbarui Koleksi.
  • Ini adalah Kursor Universal untuk API Koleksi.
  • Nama metode sangat sederhana dan sangat mudah digunakan.

Batasan Iterator di Java

Iterator di Java memiliki kekurangan berikut:

  • Anda hanya dapat melakukan iterasi arah maju, yaitu Uni-Directional Iterator.
  • Penggantian dan penambahan elemen baru tidak didukung oleh Iterator.
  • ListIterator adalah iterator paling kuat tetapi hanya berlaku untuk kelas yang diimplementasikan Daftar. Jadi ini bukan iterator Universal.
  • Ketika Anda menggunakan Operasi CRUD, itu tidak mendukung operasi pembuatan dan pembaruan.
  • Ketika Anda membandingkannya dengan Spliterator, itu tidak memungkinkan Anda mengulang elemen paralel. Ini berarti hanya mendukung iterasi berurutan.
  • Itu tidak mendukung kinerja yang lebih baik untuk mengulang volume data yang besar.

Ini membawa kita ke akhir artikel ini di mana kita telah belajar tentang cara kerja iterator di Java. Harap Anda jelas dengan semua yang telah dibagikan dengan Anda dalam tutorial ini.

Jika Anda menemukan artikel tentang 'Iterator di Java' ini relevan, lihat perusahaan pembelajaran online tepercaya dengan jaringan lebih dari 250.000 pelajar puas yang tersebar di seluruh dunia.

Kami di sini untuk membantu Anda dalam setiap langkah dalam perjalanan Anda, selain itu, kami menghadirkan kurikulum yang dirancang untuk siswa dan profesional yang ingin menjadi Pengembang Java. Kursus ini dirancang untuk memberi Anda permulaan dalam pemrograman Java dan melatih Anda untuk konsep Java inti dan lanjutan bersama dengan berbagai kerangka kerja Java seperti Hibernate & Spring.

Jika Anda menemukan pertanyaan, silakan ajukan semua pertanyaan Anda di bagian komentar “Iterator di Java” dan tim kami akan dengan senang hati menjawabnya.