gpt4 book ai didi

java - JAVA中将Integer类型的Linked List转换为String类型的Set

转载 作者:行者123 更新时间:2023-11-30 02:34:30 26 4
gpt4 key购买 nike

我有一个IntegersList,但我想获取该List并将其转换为HashSet >.

例如我的列表如下:

1234
5678
1234
7627
4328

但我想采用该列表并将整数字符串转换为HashSet,这样它就不包含重复项。实现这一目标的最佳方法是什么?

我的列表定义为

static List<Integer> list;

我的 HashSet 定义为

static HashSet<String> set = new HashSet<String>(list);

我的错误是无法从 int 转换为 string 那么我该怎么解决这个问题?

最佳答案

一种方法是使用流:

Set<String> set = list.stream()
.map(Object::toString)
.collect(Collectors.toSet());

首先,您流式传输列表。然后,将每个元素转换为字符串,最后将所有元素收集到一个集合中。默认情况下,Collectors.toSet()创建一个 HashSet,尽管规范不保证这一点。

如果你想要一个有保证的HashSet,你可以使用Collectors.toCollection(HashSet::new):

Set<String> set = list.stream()
.map(Object::toString)
.collect(Collectors.toCollection(HashSet::new));

关于java - JAVA中将Integer类型的Linked List转换为String类型的Set,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43444761/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com