Programa para convertir un conjunto de strings a un conjunto de enteros en Java

Java Set es parte del paquete java.util y amplía la interfaz java.util.Collection. No permite el uso de elementos duplicados y, como máximo, solo puede acomodar un elemento nulo.

Un Stream es una secuencia de objetos que admite varios métodos que se pueden canalizar para producir el resultado deseado. La API de flujo de Java 8 se puede utilizar para convertir Setpara establecer.

Algoritmo :

  1. Consigue el conjunto de String.
  2. Convertir conjunto de strings en flujo de strings. Esto se hace usando Set.stream().
  3. Convertir flujo de string a flujo de entero. Esto se hace usando Stream.map() y pasando el método Integer.parseInt() como expresión lambda.
  4. Recopile Stream of Integer en Set of Integer. Esto se hace usando Collectors.toSet().
  5. Devolver/Imprimir el conjunto de String.

Programa 1: Uso de conversión directa.

// Java Program to convert
// Set<String> to Set<Integer> in Java 8
  
import java.util.*;
import java.util.stream.*;
  
class GFG {
  
    public static void main(String args[])
    {
        // Create a set of String
        Set<String> setOfString = new HashSet<>(
            Arrays.asList("1", "2", "3", "4", "5"));
  
        // Print the set of String
        System.out.println("Set of String: " + setOfString);
  
        // Convert Set of String to set of Integer
        Set<Integer> setOfInteger = setOfString.stream()
                                        .map(s -> Integer.parseInt(s))
                                        .collect(Collectors.toSet());
  
        // Print the set of Integer
        System.out.println("Set of Integer: " + setOfInteger);
    }
}
Producción:

Set of String: [1, 2, 3, 4, 5]
Set of Integer: [1, 2, 3, 4, 5]

Programa 2: Uso de la función genérica.

// Java Program to convert
// Set<String> to Set<Integer> in Java 8
  
import java.util.*;
import java.util.stream.*;
import java.util.function.Function;
  
class GFG {
  
    // Generic function to convert Set of
    // String to Set of Integer
    public static <T, U> Set<U>
    convertStringSetToIntSet(Set<T> setOfString,
                             Function<T, U> function)
    {
        return setOfString.stream()
            .map(function)
            .collect(Collectors.toSet());
    }
  
    public static void main(String args[])
    {
  
        // Create a set of String
        Set<String> setOfString = new HashSet<>(
            Arrays.asList("1", "2", "3", "4", "5"));
  
        // Print the set of String
        System.out.println("Set of String: " + setOfString);
  
        // Convert Set of String to set of Integer
        Set<Integer> setOfInteger = convertStringSetToIntSet(
            setOfString,
            Integer::parseInt);
  
        // Print the set of Integer
        System.out.println("Set of Integer: " + setOfInteger);
    }
}
Producción:

Set of String: [1, 2, 3, 4, 5]
Set of Integer: [1, 2, 3, 4, 5]

Publicación traducida automáticamente

Artículo escrito por RishabhPrabhu 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 *