Panduan Implementasi Iterator di Java

Diterbitkan: 2020-06-11

Di Java, ada utilitas yang digunakan untuk menghasilkan elemen berurutan dari sebuah seri, yang dikenal sebagai iterator java. Diimplementasikan oleh semua kelas koleksi, implementasi iterator di Java ini mengembalikan objek yang kemudian memicu antarmuka. Karena kerangka kerja koleksi Java terdiri dari kombinasi kelas yang berjalan pada kumpulan data yang dapat digunakan kembali, objek yang dikembalikan melalui antarmuka iterator semacam itu dapat berjalan melintasi semua elemen dalam koleksi.

Ada karakteristik khusus Java Iterator yang perlu Anda ingat sebelum mengeksekusi:

  • Kerangka koleksi di Java dilengkapi dengan fungsi iterator () yang dapat membantu dalam menjalankan perintah READ dan REMOVE.
  • Metode iterasi menggunakan fungsi next() untuk berpindah melalui elemen, dalam loop otomatis, tidak seperti iterator lainnya.
  • Setiap iterator hanya dapat melakukan perjalanan satu kali melalui semua elemen, dan setelah sisi akhir seri tercapai, saatnya bagi Anda untuk mendapatkan iterator lain.

Baca: 6 Alasan Teratas Mengapa Java Begitu Populer di Kalangan Pengembang

Daftar isi

Menjalankan Implementasi Iterator dalam Kode Java

Karena setiap kerangka kerja melekat dengan objek yang dikembalikan, metode tersebut dapat digunakan untuk mengakses elemen dengan cara berikut:

  • Memanggil metode iterator().
  • Pembuatan loop yang dapat memanggil boolean hasNext(), yang mengembalikan variabel boolean. Setelah variabel memiliki nilai nyata, itu memungkinkan iterator untuk melakukan perjalanan melalui koleksi.
  • Memanggil fungsi E next() untuk sampai ke elemen berikutnya dalam koleksi.
  • Void remove() default dapat digunakan untuk menghapus koleksi yang mendasari elemen terakhir yang dikembalikan melalui iterator.
  • Fungsi void forEachRemaining() default membantu iterator untuk melakukan fungsi yang diberikan di setiap elemen hingga seluruh koleksi menyelesaikan pemrosesan.

Menggunakan fungsi hasNext() dan Next() dalam implementasi iterator di java

Seperti yang sudah kita ketahui, fungsi next() membantu iterator melakukan perjalanan melintasi semua elemen koleksi satu per satu; oleh karena itu, setelah iterator mencapai akhir koleksi, next() memicu pengecualian. Inilah sebabnya mengapa menggunakan fungsi hasnext() sebelum next() memastikan bahwa iterator memiliki objek berikutnya yang sejalan dengan koleksi, untuk menghilangkan pengecualian apa pun.

Objek remove(): Dengan bantuan fungsi objek remove(), Anda dapat menghapus dan mengembalikan objek terakhir yang dilalui oleh iterator dan dikembalikan oleh next(). Jika ada modifikasi pada objek sejak kunjungan sebelumnya, fungsi IllegalStateException() akan berlaku.

Berikut adalah satu contoh sederhana tentang bagaimana fungsi berlangsung:

ArrayList abc = new ArrayList();

Iterator xyz = xyz.iterator();

xyz.berikutnya();

xyz.hapus;

xyz.hapus();

xyz.berikutnya();

xyz.hapus();

impor java.util.*;

kelas iteratorUji coba

{

public static void main (String [] arg)

}

Daftar trialList = new ArrayList();

String trialArray[] = {“Harry”, “Jack”, “Jacob”, “Maggie”, “George”};

untuk (int i=0; i<trialArray.length; i++)

{

trialList.add(trialArray[i]);

}

Iterator xyz = trialList.iterator();

sementara (xyz.hasNext())

{

System.out.println(xyz.next());

}}}

Output yang dihasilkan dari kode di atas adalah:

Harry

Mendongkrak

Yakub

Maggie

George

Dalam contoh di atas, iterator xyz dibuat untuk ArrayList abc yang pernah menghapus elemen pertama dan objek yang berdekatan, melakukan iterasi yang cepat dan mudah.

Baca juga: 17 Ide & Topik Java Project Menarik Untuk Pemula

Implementasi Iterator Kelas Kustom di Java

Untuk setiap kelas kustom yang ditentukan pengguna, Anda dapat mengulangi elemen menggunakan metode berikut:

  • Tetapkan dan tentukan kelas khusus.
  • Tetapkan dan tentukan kelas koleksi ke kelas khusus.
  • Di kelas koleksi ini, antarmuka yang dapat diubah perlu diimplementasikan dengan kelas khusus sebagai parameter tipe.
  • Kelas koleksi yang sama harus dapat melakukan fungsi iterator ().
  • Setelah instruksi ini diikuti di kelas Kustom, semuanya siap untuk menjalankan objek iterator atau Enhanced For Loop() untuk elemennya.

Kelebihan dan Kekurangan Implementasi Iterator di Java

  • Berlaku untuk semua kelas Koleksi
  • Kursor universal untuk Collection API, dengan metode dan operasi yang aman

Kekurangan:

  • Tidak mendukung operasi CREATE dan UPDATE
  • Iterasi hanya terjadi dalam satu arah
  • ListIterator dan Spliterator adalah kursor yang lebih baik di java yang memungkinkan iterasi paralel dan iterasi data massal.

Implementasi Enumerasi dan Iterator di Java : Persamaan dan Perbedaan

  • Baik enumerator dan iterator adalah kursor java dan dapat digunakan untuk iterasi elemen kelas koleksi satu per satu, dalam satu arah.
  • Kedua kursor mendukung metode READ.

Perbedaan:

  • Pencacahan adalah antarmuka warisan, pertama kali dieksekusi di Java 1.0, dan terbatas pada kelas koleksi Legacy, tidak seperti Iterator.
  • Enumerator bukanlah kursor universal dan oleh karena itu memiliki nama fungsi yang rumit yang terbatas untuk menjalankan fungsi READ.

Baca juga: Gaji Java Developer di India: Untuk Freshers & Berpengalaman

Kesimpulan

Itu saja untuk implementasi iterator di Jawa, teman-teman! Harap Anda tahu sekarang bagaimana memulai iterasi dengan cara yang benar.

Jika Anda tertarik untuk mempelajari lebih lanjut tentang pengembangan perangkat lunak full-stack, lihat Diploma PG Tingkat & IIIT-B dalam Pengembangan Perangkat Lunak Full-stack yang dirancang untuk profesional yang bekerja dan menawarkan 500+ jam pelatihan yang ketat, 9+ proyek, dan tugas, status Alumni IIIT-B, proyek batu penjuru praktis & bantuan pekerjaan dengan perusahaan-perusahaan top.

Persiapkan Karir Masa Depan

PEMBELAJARAN TERPERCAYA INDUSTRI - SERTIFIKASI YANG DIAKUI INDUSTRI.
Daftar Sekarang @ upGrad