¿Cómo convertir strings separadas por comas a HashSet en Java?

Dado un conjunto de strings, la tarea es convertir el conjunto en una string separada por comas en Java.

Ejemplos:

Input: Set<String> = ["Geeks", "ForGeeks", "GeeksForGeeks"]
Output: "Geeks, For, Geeks"

Input: Set<String> = ["G", "e", "e", "k", "s"]
Output: "G, e, e, k, s" 

Hay dos formas en las que podemos convertir strings separadas por comas a Java HashSet:

Método 1: usar el método de división de strings y la clase Arrays

  • Primero, dividiremos la string por comas y eso nos devolverá una array. 
  • Una vez que obtengamos un arreglo, lo convertiremos a la Lista usando el método asList() de la clase Arrays. 
  • Luego, el objeto List se puede convertir en HashSet utilizando el constructor HashSet .

Java

// Java program to convert comma 
// separated string to HashSet
  
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
   
public class StringToHashSetExample {
      
    public static void main(String[] args) {
          
        String str = "1,2,3,4,2,5";
          
        // split the string by comma
        String[] strParts = str.split(",");
          
        // convert array to the List using asList method
        List<String> listParts = Arrays.asList(strParts);
          
        // create HashSet from the List using constructor
        HashSet<String> hsetFromString = new HashSet<String>( listParts );
          
        System.out.println("HashSet contains: " + hsetFromString);
    }
}
Producción

HashSet contains: [1, 2, 3, 4, 5]

Método 2: Usar flujo de Java 8

  • Si está utilizando Java versión 8 o posterior, también puede usar la transmisión para convertir una string separada por comas en un objeto Set<String> como se indica a continuación.

Java

// Java program to convert comma
// separated string to HashSet
  
import java.util.*;
import java.io.*;
import java.util.stream.*;
  
public class StringToHashSetExample {
  
    public static void main(String[] args)
    {
  
        String str = "1,2,3,4,2,5";
  
        Set<String> set
            = Stream.of(str.trim().split("\\s*,\\s*"))
                  .collect(Collectors.toSet());
  
        System.out.println("HashSet contains: " + set);
    }
}
Producción

HashSet contains: [1, 2, 3, 4, 5]

Publicación traducida automáticamente

Artículo escrito por gunjangeu y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *