📢 Nuovo Corso Bootstrap Completo disponibile!

Esercizi Iteratori Java

Ecco degli esercizi semplici con soluzione per praticare le basi sull’utilizzo degli iteratori in Java.

Esercizio 1

Iterare su una ArrayList utilizzando un iteratore e stampare gli elementi:
import java.util.ArrayList;
import java.util.Iterator;
public class IteratoreArrayList {
public static void main(String[] args) {
ArrayList<String> colori = new ArrayList<>();
colori.add("Rosso");
colori.add("Verde");
colori.add("Blu");
Iterator<String> iterator = colori.iterator();
while (iterator.hasNext()) {
String colore = iterator.next();
System.out.println(colore);
}
}
}

Esercizio 2

Rimuovere gli elementi pari da una LinkedList utilizzando un iteratore:
import java.util.LinkedList;
import java.util.Iterator;
public class RimuoviElementiPari {
public static void main(String[] args) {
LinkedList<Integer> numeri = new LinkedList<>();
numeri.add(1);
numeri.add(2);
numeri.add(3);
numeri.add(4);
numeri.add(5);
Iterator<Integer> iterator = numeri.iterator();
while (iterator.hasNext()) {
int numero = iterator.next();
if (numero % 2 == 0) {
iterator.remove();
}
}
System.out.println(numeri);
}
}

Esercizio 3

Iterare su una HashSet utilizzando un iteratore e calcolare la somma degli elementi:
import java.util.HashSet;
import java.util.Iterator;
public class SommaHashSet {
public static void main(String[] args) {
HashSet<Integer> numeri = new HashSet<>();
numeri.add(1);
numeri.add(2);
numeri.add(3);
numeri.add(4);
numeri.add(5);
Iterator<Integer> iterator = numeri.iterator();
int somma = 0;
while (iterator.hasNext()) {
int numero = iterator.next();
somma += numero;
}
System.out.println("La somma degli elementi è: " + somma);
}
}

Esercizio 4

Rimuovere gli elementi duplicati da una LinkedList utilizzando un iteratore:
import java.util.LinkedList;
import java.util.Iterator;
public class RimuoviDuplicatiLinkedList {
public static void main(String[] args) {
LinkedList<String> parole = new LinkedList<>();
parole.add("ciao");
parole.add("ciao");
parole.add("mondo");
parole.add("mondo");
parole.add("!");
Iterator<String> iterator = parole.iterator();
while (iterator.hasNext()) {
String parola = iterator.next();
if (parole.indexOf(parola) != parole.lastIndexOf(parola)) {
iterator.remove();
}
}
System.out.println(parole);
}
}

Esercizio 5

Iterare su una TreeMap utilizzando un iteratore e stampare le chiavi:
import java.util.TreeMap;
import java.util.Iterator;
import java.util.Map;
public class IteratoreTreeMap {
public static void main(String[] args) {
TreeMap<Integer, String> studenti = new TreeMap<>();
studenti.put(1, "Alice");
studenti.put(2, "Bob");
studenti.put(3, "Charlie");
Iterator<Integer> iterator = studenti.keySet().iterator();
while (iterator.hasNext()) {
int chiave = iterator.next();
System.out.println(chiave);
}
}
}

Esercizio 6

Rimuovere gli elementi null da un HashSet utilizzando un iteratore:
import java.util.HashSet;
import java.util.Iterator;
public class RimuoviNullHashSet {
public static void main(String[] args) {
HashSet<String> set = new HashSet<>();
set.add("Alice");
set.add(null);
set.add("Bob");
set.add(null);
set.add("Charlie");
Iterator<String> iterator = set.iterator();
while (iterator.hasNext()) {
String elemento = iterator.next();
if (elemento == null) {
iterator.remove();
}
}
System.out.println(set);
}
}

Esercizio 7

Iterare su una PriorityQueue utilizzando un iteratore e stampare gli elementi:
import java.util.PriorityQueue;
import java.util.Iterator;
public class IteratorePriorityQueue {
public static void main(String[] args) {
PriorityQueue<String> coda = new PriorityQueue<>();
coda.offer("Rosso");
coda.offer("Verde");
coda.offer("Blu");
Iterator<String> iterator = coda.iterator();
while (iterator.hasNext()) {
String elemento = iterator.next();
System.out.println(elemento);
}
}
}

Esercizio 8

Rimuovere gli elementi dispari da un ArrayList utilizzando un iteratore:
import java.util.ArrayList;
import java.util.Iterator;
public class RimuoviElementiDispari {
public static void main(String[] args) {
ArrayList<Integer> numeri = new ArrayList<>();
numeri.add(1);
numeri.add(2);
numeri.add(3);
numeri.add(4);
numeri.add(5);
Iterator<Integer> iterator = numeri.iterator();
while (iterator.hasNext()) {
int numero = iterator.next();
if (numero % 2 != 0) {
iterator.remove();
}
}
System.out.println(numeri);
}
}

Esercizio 9

Iterare su una LinkedHashMap utilizzando un iteratore e stampare le chiavi e i valori:
import java.util.LinkedHashMap;
import java.util.Iterator;
import java.util.Map;
public class IteratoreLinkedHashMap {
public static void main(String[] args) {
LinkedHashMap<String, Integer> studenti = new LinkedHashMap<>();
studenti.put("Alice", 20);
studenti.put("Bob", 18);
studenti.put("Charlie", 22);
Iterator<Map.Entry<String, Integer>> iterator = studenti.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry<String, Integer> entry = iterator.next();
String nome = entry.getKey();
int eta = entry.getValue();
System.out.println("Nome: " + nome + ", EtĂ : " + eta);
}
}
}

Esercizio 10

Rimuovere gli elementi negativi da un HashSet utilizzando un iteratore:
import java.util.HashSet;
import java.util.Iterator;
public class RimuoviElementiNegativi {
public static void main(String[] args) {
HashSet<Integer> numeri = new HashSet<>();
numeri.add(1);
numeri.add(-2);
numeri.add(3);
numeri.add(-4);
numeri.add(5);
Iterator<Integer> iterator = numeri.iterator();
while (iterator.hasNext()) {
int numero = iterator.next();
if (numero < 0) {
iterator.remove();
}
}
System.out.println(numeri);
}
}