Set<Integer> 转 Set<String>
时间: 2023-12-11 09:02:17 浏览: 145
可以使用Java 8的Stream API来实现Set<Integer> 转 Set<String>:
```java
Set<Integer> intSet = new HashSet<>();
intSet.add(1);
intSet.add(2);
intSet.add(3);
Set<String> stringSet = intSet.stream()
.map(String::valueOf)
.collect(Collectors.toSet());
System.out.println(stringSet); // 输出 [1, 2, 3]
```
这里使用了`Stream.map()`方法将Integer类型的元素转换成String类型,然后使用`Collectors.toSet()`方法将转换后的结果收集到一个新的Set<String>中。
相关问题
java Set<String>转Set<integer>
在Java中将一个Set<String>转换为Set<Integer>可以通过以下步骤实现:
1. 遍历Set<String>中的每个元素
2. 将每个元素转换为对应的Integer类型
3. 将转换后的Integer类型添加到Set<Integer>中
以下是示例代码:
```java
Set<String> setStr = new HashSet<>();
setStr.add("1");
setStr.add("2");
setStr.add("3");
Set<Integer> setInt = new HashSet<>();
for (String str : setStr) {
setInt.add(Integer.parseInt(str));
}
System.out.println(setInt);
```
输出结果为:
```
[1, 2, 3]
```
在第二步中,我们使用Integer.parseInt()将字符串类型的元素转换为Integer类型。然后,我们将转换后的Integer类型添加到Set<Integer>中。最终得到的setInt就是我们需要的Set<Integer>类型的集合。
Set<Object> 转List<Integer>
如果 Set<Object> 中的所有元素都是 Integer 类型的,那么可以将其转换为 List<Integer>,可以使用 Java 8 中的 Stream API 来完成:
```
Set<Object> set = ...;
List<Integer> list = set.stream()
.map(Object::toString)
.map(Integer::valueOf)
.collect(Collectors.toList());
```
这里使用了 `map` 方法将元素从 Object 类型转换为 String 类型,然后再将其转换为 Integer 类型。最后使用 `collect` 方法将所有元素收集到 List<Integer> 中。需要注意的是,转换过程中需要确保 Set 中的所有元素都是 Integer 类型,否则会抛出类型转换异常。
阅读全文