Java中将整数集转换为字符串集的程序
Java Set 是Java.util 包的一部分,扩展了Java.util.Collection 接口。它不允许使用重复元素,并且最多只能容纳一个空元素。
Stream 是一系列支持各种方法的对象,这些方法可以流水线化以产生所需的结果。 Java 8 Stream API 可用于转换Set
算法:
- 获取整数集。
- 将整数集转换为整数流。这是使用 Set.stream() 完成的。
- 将整数流转换为字符串流。这是使用 Stream.map() 完成的。
- 将字符串流收集到字符串集合中。这是使用 Collectors.toSet() 完成的。
- 返回/打印字符串集。
方案一:使用直接转换。
// 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]