📜  Java中将整数集转换为字符串集的程序

📅  最后修改于: 2022-05-13 01:55:30.167000             🧑  作者: Mango

Java中将整数集转换为字符串集的程序

Java Set 是Java.util 包的一部分,扩展了Java.util.Collection 接口。它不允许使用重复元素,并且最多只能容纳一个空元素。

Stream 是一系列支持各种方法的对象,这些方法可以流水线化以产生所需的结果。 Java 8 Stream API 可用于转换Set设置.

算法

  1. 获取整数集。
  2. 将整数集转换为整数流。这是使用 Set.stream() 完成的。
  3. 将整数流转换为字符串流。这是使用 Stream.map() 完成的。
  4. 将字符串流收集到字符串集合中。这是使用 Collectors.toSet() 完成的。
  5. 返回/打印字符串集。

方案一:使用直接转换。

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

方案 2:使用泛型函数。

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