Input/Output e Stream in Java
Alex Liu
Software Development Engineer

import java.util.ArrayList;
public class SampleData {
public static void main(String[] args) {
ArrayList<String> names = new ArrayList<>();
names.add("Alice");
names.add("Bob");
names.add("Charlie");
}
}
[Alice, Bob, Charlie]
// Importa la classe ListIterator import java.util.ListIterator;// Crea un ListIterator per la lista `names` ListIterator<String> it = names.listIterator(); // Usa .hasNext() e `.next()` per scorrere e stampare riga per riga while (it.hasNext()) { System.out.println(it.next()); }
Alice
Bob
Charlie
.previous() per muoverti all'indietro// Crea un ListIterator per la lista `names`
ListIterator<String> it = names.listIterator(names.size());
// Usa .hasPrevious() per verificare se l'iteratore è all'inizio
while (it.hasPrevious()) {
// Usa .previous() per leggere in ordine inverso
System.out.println(it.previous());}
Charlie
Bob
Alice
.set()// Crea un ListIterator per la lista names ListIterator<String> it = names.listIterator();// Scorri la lista e modifica con .set() while (it.hasNext()) { String name = it.next(); if ("Bob".equals(name)) it.set("Bobby"); }
names aggiornata:[Alice, Bobby, Charlie]
.add() per aggiungere elementiListIterator<String> it = names.listIterator();// Scorri la lista e inserisci elementi con .add() while (it.hasNext()) { String name = it.next(); if ("Charlie".equals(name)) it.add("David"); }
names aggiornata:[Alice, Bobby, Charlie, David]
ListIterator estende IteratorMetodi chiave
.next()/.previous(): vai avanti/indietro.set(): modifica l'elemento corrente.add(): inserisce dinamicamente.remove(): elimina in modo sicuroArrayList, LinkedList, ecc.)Input/Output e Stream in Java