Java Iterator
Java Iterator
An Iterator
is 'n voorwerp wat gebruik kan word om deur versamelings te loop, soos ArrayList
en HashSet . Dit word 'n "iterator" genoem omdat "iterating" die tegniese term vir lus is.
Om 'n Iterator te gebruik, moet jy dit vanaf die java.util
pakket invoer.
Kry 'n Iterator
Die iterator()
metode kan gebruik word om 'n Iterator
vir enige versameling te kry:
Voorbeeld
// Import the ArrayList class and the Iterator class
import java.util.ArrayList;
import java.util.Iterator;
public class Main {
public static void main(String[] args) {
// Make a collection
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
// Get the iterator
Iterator<String> it = cars.iterator();
// Print the first item
System.out.println(it.next());
}
}
Loop deur 'n versameling
Om deur 'n versameling te loop, gebruik die hasNext()
en next()
metodes van die Iterator
:
Voorbeeld
while(it.hasNext()) {
System.out.println(it.next());
}
Verwydering van items uit 'n versameling
Iterators is ontwerp om die versamelings wat hulle deurloop maklik te verander. Die remove()
metode kan items uit 'n versameling verwyder terwyl jy lus maak.
Voorbeeld
Gebruik 'n iterator om getalle minder as 10 uit 'n versameling te verwyder:
import java.util.ArrayList;
import java.util.Iterator;
public class Main {
public static void main(String[] args) {
ArrayList<Integer> numbers = new ArrayList<Integer>();
numbers.add(12);
numbers.add(8);
numbers.add(2);
numbers.add(23);
Iterator<Integer> it = numbers.iterator();
while(it.hasNext()) {
Integer i = it.next();
if(i < 10) {
it.remove();
}
}
System.out.println(numbers);
}
}
Let wel: Om items te probeer verwyder deur 'n vir-lus of 'n vir-elke-lus te gebruik , sal nie korrek werk nie, want die versameling verander grootte op dieselfde tyd wat die kode probeer lus.