Iterare attraverso il set in Java

Rupam Yadav 12 ottobre 2023
  1. Ripeti su Set/HashSet in Java usando il cicli for migliorato
  2. Iterare un vettore usando l’enumerazione in Java
  3. Ripeti su Set/HashSet in Java convertendolo in un array
  4. Ripeti su Set/HashSet in Java utilizzando il metodo stream() della classe Array
Iterare attraverso il set in Java

Questo articolo introdurrà come iterare attraverso Set o HashSet in Java senza usare l’iteratore. Un iteratore viene utilizzato per restituire gli elementi in ordine casuale. Questa attività può essere eseguita utilizzando vari metodi diversi da un iteratore.

Ripeti su Set/HashSet in Java usando il cicli for migliorato

Il bucle for-each in Java è anche chiamato cicli for migliorato. Viene utilizzato per scorrere gli elementi di array e raccolte in Java.

Qui abbiamo creato un Set chiamato mySet usando la classe HashSet, una raccolta di elementi stringa. Chiamando il metodo add() su mySet abbiamo aggiunto elementi a mySet.

Usando il cicli for migliorato, possiamo iterare su ogni elemento all’interno della collezione e stamparlo, come mostrato nel codice. Per ogni elemento s di tipo String in mySet, possiamo iterare su di esso. Nota che gli elementi ripetono in una raccolta non ordinata.

import java.util.HashSet;
import java.util.Set;

public class IterateOverHashSet {
  public static void main(String[] args) {
    Set<String> mySet = new HashSet<>();
    mySet.add("Apple");
    mySet.add("Banana");
    mySet.add("Mango");

    for (String s : mySet) {
      System.out.println("s is : " + s);
    }
  }
}

Produzione:

s is : Mango
s is : Apple
s is : Banana

Iterare un vettore usando l’enumerazione in Java

Vector implementa l’interfaccia List, che ci aiuta a creare array ridimensionabili simili alla classe ArrayList. In primo luogo, abbiamo creato un Set di elementi di tipo stringa usando la classe HashSet, successivamente abbiamo aggiunto elementi usando il metodo add().

myset viene quindi passato al costruttore della classe Vector, e quindi viene chiamato il metodo elements() per enumerare gli elementi di Vector.

Quindi usiamo un cicli while per stampare finché l’enumerazione (e) non ha più elementi. Chiamate consecutive al metodo nextElements() restituiscono elementi successivi della serie.

import java.util.Enumeration;
import java.util.HashSet;
import java.util.Set;
import java.util.Vector;

public class IterateOverHashSet {
  public static void main(String[] args) {
    Set<String> mySet = new HashSet<>();
    mySet.add("Apple");
    mySet.add("Banana");
    mySet.add("Mango");

    Enumeration e = new Vector(mySet).elements();
    while (e.hasMoreElements()) {
      System.out.println(e.nextElement());
    }
  }
}

Produzione:

Mango
Apple
Banana

Ripeti su Set/HashSet in Java convertendolo in un array

Per prima cosa creiamo un Set di elementi di tipo String e aggiungiamo elementi a mySet. Per iterare sugli elementi, convertiamo il nostro mySet in un array usando il metodo toArray(). Il metodo toArray() restituisce un array che ha gli stessi elementi di HashSet.

Quindi, utilizzando un cicli for, possiamo eseguire il bucle su tutti gli elementi nel nuovo array chiamato myArray. Stampa ogni elemento, come mostrato nel codice sottostante.

import java.util.HashSet;
import java.util.Set;

public class IterateOverHashSet {
  public static void main(String[] args) {
    Set<String> mySet = new HashSet<>();
    mySet.add("Apple");
    mySet.add("Banana");
    mySet.add("Mango");

    String[] myArray = mySet.toArray(new String[mySet.size()]);
    for (int index = 0; index < myArray.length; index++) {
      System.out.println("element : " + myArray[index]);
    }
  }
}

Produzione:

element : Mango
element : Apple
element : Banana

Ripeti su Set/HashSet in Java utilizzando il metodo stream() della classe Array

Nel codice mostrato di seguito, creiamo prima un Set di elementi di tipo String utilizzando la classe HashSet in Java. Quindi aggiungiamo elementi chiamando il metodo add() sulla sua istanza fruits.

Il metodo stream() restituisce un flusso sequenziale di raccolta. Trasformiamo il nostro Set di String - fruits, in un stream. Successivamente abbiamo visualizzato gli elementi del stream utilizzando un’espressione lambda.

import java.util.HashSet;
import java.util.Set;
import java.util.stream.Stream;

public class Simple {
  public static void main(String args[]) {
    Set<String> fruits = new HashSet<>();
    fruits.add("Apple");
    fruits.add("Banana");
    fruits.add("Mango");

    Stream<String> stream = fruits.stream();
    stream.forEach((fruit) -> System.out.println(fruit));
  }
}

Produzione:

Apple
Mango
Banana
Autore: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

Articolo correlato - Java Set