📌  相关文章
📜  如何将逗号分隔的字符串转换为Java中的 HashSet?

📅  最后修改于: 2022-05-13 01:55:03.962000             🧑  作者: Mango

如何将逗号分隔的字符串转换为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]