📅  最后修改于: 2023-12-03 15:09:08.116000             🧑  作者: Mango
在 Java 中,我们经常需要将逗号分隔的字符串转换为集合,特别是 HashSet。HashSet 是一种基于哈希表实现的无序集合,它可以用于存储一组不重复的元素。
首先,我们可以使用 Java 中的 split 方法将逗号分隔的字符串转换为数组,然后再使用循环将数组中的元素添加到 HashSet 中。以下是示例代码:
String str = "java,python,c++,javascript";
String[] arr = str.split(",");
Set<String> set = new HashSet<>();
for (String s : arr) {
set.add(s);
}
Java 8 提供了 Stream API,它可以使代码更加简洁和易读。我们可以使用 Stream API 中的 split 和 collect 方法将逗号分隔的字符串转换为 HashSet。以下是示例代码:
String str = "java,python,c++,javascript";
Set<String> set = Arrays.stream(str.split(","))
.collect(Collectors.toSet());
Google Guava 是一个 Java 工具库,它提供了丰富的 API 和数据结构,包括 HashSet。我们可以使用 Guava 库中的 Splitter 和 Sets 类将逗号分隔的字符串转换为 HashSet。以下是示例代码:
String str = "java,python,c++,javascript";
Set<String> set = Sets.newHashSet(Splitter.on(",")
.trimResults()
.omitEmptyStrings()
.split(str));
以上三种方法都可以将逗号分隔的字符串转换为 Java 中的 HashSet,选择其中一种即可。如果项目中已经引入了 Guava 库,可以优先考虑使用 Guava 的方式,否则可以考虑使用 Java 8 的 Stream API 或传统的循环方式。