Converting an array to a Set in Java is a common task. One way to achieve this is through a loop, but there are more efficient and concise methods.
How to Convert an Array to a Set
Use the Arrays.asList() Method
Similar to the Arrays.asList() method for converting arrays to lists, there is no direct equivalent for creating Sets. However, you can use Arrays.asList() to create a List, and then convert the List to a Set using the Set constructor:
<code class="java">Set<T> mySet = new HashSet<>(Arrays.asList(someArray));</code>
Use the Set.of() Method (Java 9 )
If you only need an unmodifiable Set, you can use the Set.of() method introduced in Java 9:
<code class="java">Set<T> mySet = Set.of(someArray);</code>
Use Generic Type Inference (Java 10 )
In Java 10 , the generic type parameter can be inferred from the array's component type:
<code class="java">var mySet = Set.of(someArray);</code>
Caution:
Set.of() throws an IllegalArgumentException if the array contains duplicate elements. To handle this, create an unmodifiable Set using the Arrays.asList() method and Set.copyOf():
<code class="java">var mySet = Set.copyOf(Arrays.asList(array));</code>
The above is the detailed content of How to Convert an Array to a Set in Java: Efficient Techniques and Best Practices. For more information, please follow other related articles on the PHP Chinese website!