如何将数组转换为java中的set


我想将一个数组转换为Java中的Set。有一些明显的做法(即循环),但我想要一些整洁的东西,如:

java.util.Arrays.asList(Object[] a);

有什么想法?

像这样:

Set<T> mySet = new HashSet<T>(Arrays.asList(someArray));

Set<T> mySet = new HashSet<T>();
Collections.addAll(mySet, myArray);

这是 Collections.addAll(java.util.Collection,T
…)

另外:如果我们的数组充满了原语呢?_

对于JDK&lt; 8,我只要写一个明显的for循环来完成一个循环中的wrap和add-to-set。

对于JDK&gt; = 8,一个有吸引力的选项就像是:

Arrays.stream(intArray).boxed().collect(Collectors.toSet());

未经作者同意,本文严禁转载,违者必究!