如何将逗号分隔的字符串转换为Java中的 HashSet?
给定一组字符串,任务是在Java中将 Set 转换为逗号分隔的字符串。
例子:
Input: Set = ["Geeks", "ForGeeks", "GeeksForGeeks"]
Output: "Geeks, For, Geeks"
Input: Set = ["G", "e", "e", "k", "s"]
Output: "G, e, e, k, s"
有两种方法可以将逗号分隔的字符串转换为Java HashSet :
方法一:使用String split方法和Arrays类
- 首先,我们将用逗号分割字符串,这将返回一个数组。
- 一旦我们得到一个数组,我们将使用 Arrays 类的 asList() 方法将其转换为 List。
- 然后可以使用HashSet构造函数将 List 对象转换为HashSet 。
Java
// Java program to convert comma
// separated string to HashSet
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
public class StringToHashSetExample {
public static void main(String[] args) {
String str = "1,2,3,4,2,5";
// split the string by comma
String[] strParts = str.split(",");
// convert array to the List using asList method
List listParts = Arrays.asList(strParts);
// create HashSet from the List using constructor
HashSet hsetFromString = new HashSet( listParts );
System.out.println("HashSet contains: " + hsetFromString);
}
}
Java
// Java program to convert comma
// separated string to HashSet
import java.util.*;
import java.io.*;
import java.util.stream.*;
public class StringToHashSetExample {
public static void main(String[] args)
{
String str = "1,2,3,4,2,5";
Set set
= Stream.of(str.trim().split("\\s*,\\s*"))
.collect(Collectors.toSet());
System.out.println("HashSet contains: " + set);
}
}
输出
HashSet contains: [1, 2, 3, 4, 5]
方法 2:使用Java 8 流
- 如果您使用的是Java 8 或更高版本,您还可以使用流将逗号分隔的字符串转换为 Set
对象,如下所示。
Java
// Java program to convert comma
// separated string to HashSet
import java.util.*;
import java.io.*;
import java.util.stream.*;
public class StringToHashSetExample {
public static void main(String[] args)
{
String str = "1,2,3,4,2,5";
Set set
= Stream.of(str.trim().split("\\s*,\\s*"))
.collect(Collectors.toSet());
System.out.println("HashSet contains: " + set);
}
}
输出
HashSet contains: [1, 2, 3, 4, 5]