Belajar Menggunakan Iterator pada Java


Assalamualaikum Warahmatullahi Wabarakatuh.

Iterator adalah salah satu interface yang tersedia di dalam library Java, yang berlokasi di java.util package. Iterator digunakan untuk mengakses dan menampilkan nilai beserta tambahan method lain yang didefinisikan di dalam interface Iterator. Pada umumya untuk mengakses seluruh elemen yang ada pada ArrayList, kita menggunakan perulangan seperti for each, dengan menggunakan Iterator, kita dapat menambahkan beberapa method tambahan lainnya.

Belajar Menggunakan Iterator pada Java

Jika kalian masih bingung mengenai pengertian serta fungsi dari Iterator, pada materi ini , kita akan mencoba menggunakan Iterator, menggunakan bahasa pemrograman Java. Kalo begitu, mari kita simak tutorial berikut ini.

Materi Lainnya Yang Direkomendasikan:

Belajar Menggunakan Iterator pada Java

Pada program berikut ini, kita akan membuat sebuah objek ArrayList, yang akan saya berinama hewan, objek hewan tersebut digunakan untuk menyimpan nilai dengan tipe data String, lalu menginisialisasi method Iterator yang terdapat pada objek hewan dari collection ArrayList.

package WILDAN_TECHNO_ART;

//Package Yang Digunakan Untuk Membuat Array List
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class latihan_java {
    
    public static void main(String[] args){
        //Membuat Instance/Objek hewan Dari ArrayList
        List<String> hewan = new ArrayList<>();
        
        //Menambahkan Data atau Nilai pada Objek hewan
        hewan.add("Kucing");
        hewan.add("Kambing");
        hewan.add("Domba");
        hewan.add("Ayam");
        hewan.add("Sapi");
        hewan.add("Unta");
        hewan.add("Komodo");
        hewan.add("Singa");
        hewan.add("Macan");
        hewan.add("Jerapah");
        
        /*
        *Menginisialisasi Method Iterator yang Terdapat 
        *Pada Objek hewan dari Collection ArrayList
        */
        
        Iterator iterator = hewan.iterator();
        
        //Mengecek Iterator Apakah Mempunyai Elemen Selanjutnya atau Tidak
        while(iterator.hasNext()){
            //Jika Iya/True Maka Iterator Akan Mengambil Nilai Selanjutnya
            System.out.println(iterator.next());
        }
    }
}

Demo:

Contoh sederhana penggunaan Iterator pada Java

Untuk mencetak semua data pada objek hewan, disana kita menggunakan statement perulangan while, method hashNext() digunakan untuk mengecek kondisi objek itarator, apakah masih terdapat eleman selanjutnya atau tidak, jika bernilai true, maka iterator akan mengambil element selanjutnya menggunakan fungsi next().

Memodifikasi Nilai Menggunakan Interface ListIterator

Pada Java, kita juga dapat menggunakan Interface ListIterator ,yang mengextend atau mewarisi interface dari Iterator. Dengan begitu, Kita dapat memodifikasi nilai pada elementt yang akan ditampilkan. Berikut contoh code ,beserta penjelasanya:

package WILDAN_TECHNO_ART;

//Package Yang Digunakan Untuk Membuat List/ArrayList
import java.util.ArrayList;
import java.util.List;

//Package Yang Digunakan Untuk Membuat Iterator/ListIterator
import java.util.Iterator;
import java.util.ListIterator;

public class latihan_java {
    
    public static void main(String[] args){
        //Membuat Instance/Objek angka Dari ArrayList
        List<Integer> angka = new ArrayList<>();
        
        //Menambahkan Data atau Nilai pada Objek angka
        angka.add(672);
        angka.add(324);
        angka.add(902);
        angka.add(160);
        angka.add(238);
        angka.add(539);
        angka.add(357);
        
        //Menginisialisasi ListIterator pada objek angka
        ListIterator<Integer> listIterator = angka.listIterator();
        
        //Mengecek ListIterator Apakah Mempunyai Elemen Selanjutnya atau Tidak
        while(listIterator.hasNext()){
            int element = listIterator.next();
            
            //Memodifikasi Nilai, Sebelum di Iterasi
            listIterator.set(element+1000);
        }
        
        System.out.println("====== NILAI YANG SUDAH DIMODIFIKASI ======");
        
        //Menginisialisasi Iterator pada objek angka
        Iterator iterator = angka.iterator();
        
        
        while(iterator.hasNext()){
            //Melakukan Iterasi atau Perulangan
            Object element = iterator.next();
            System.out.println("Nilai: "+element);
            //Mencetak Nilai Yang Sudah Dimodifikasi
        }
        
        System.out.println("==== MENGURUTKAN NILAI SECARA TERBALIK ====");
        
        //Mengurutkan Nilai Cecara Terbalik
         while(listIterator.hasPrevious()){
            Object element = listIterator.previous();
            System.out.println("Nilai: "+element);
        }
    }
}

Demo:

Memodifikasi Nilai Menggunakan ListIterator pada Java

Penjelasan:

Pada contoh program diatas, kita menggunakan contoh variable angka , untuk menginstansi objek dari class ArrayList() dengan tipe data Integer.

Lalu kita tambahkan nilainya ke dalam list, menggunakan fungsi add(). Selanjutnya, kita deklarasikan terlebih dahulu variable ListIterator, yang digunakan untuk memodifikasi nilai pada element.

Sebelum melakukan iterasi atau perulangan , kita memodifikasi nilai pada objek angka terlebih dahulu, dengan menambahkan nilai 1000, pada variable element. Lalu menggunakan method set(), pada objek yang terdapat di class ListIterator.

Setelah itu ,kita lakukan proses iterasi atau perulangan, untuk mencetak nilai yang sudah dimodifikasi

Kita juga bisa memodifikasi nilai pada list ,secara terbalik dengan method hasPrevious(), untuk mengecek kondisi nilai atau elementt pada list. Lalu gunakan method previous(), untuk mengurutkanya secara terbalik.

Terimakasih atas kunjungannya, semoga meteri yang saya berikan bisa bermanfaat untuk kalian semua, selebihnya, mohon maaf bila ada kesalahan.

Wassalamualaikum Warahmatullahi Wabarakatuh.

Wildan M Athoillah
Wildan M Athoillah Blogger dan spesialis pembuat aplikasi android.