如何在Java中將陣列轉換為Set,反之亦然?
陣列是一個容器,可以容納固定數量的相同型別的實體。陣列的每個實體稱為元素,每個元素的位置由一個整數(從0開始)值表示,稱為索引。
示例
import java.util.Arrays; public class ArrayExample { public static void main(String args[]) { Number integerArray[] = new Integer[3]; integerArray[0] = 25; integerArray[1] = 32; integerArray[2] = 56; System.out.println(Arrays.toString(integerArray)); } }
輸出
[25, 32, 56]
而Set物件是一個集合(物件),儲存其他物件,它不允許重複元素,並且最多允許一個空值。
將陣列轉換為Set物件
java.util包的Arrays類提供了一個名為asList()的方法。此方法接受一個數組作為引數,並返回一個List物件。使用此方法將陣列轉換為Set。
示例
import java.util.Arrays; import java.util.HashSet; import java.util.Scanner; import java.util.Set; public class ArrayToSet { public static void main(String args[]){ Scanner sc = new Scanner(System.in); System.out.println("Enter the size of the array to be created ::"); int size = sc.nextInt(); String [] myArray = new String[size]; for(int i=0; i<myArray.length; i++){ System.out.println("Enter the element "+(i+1)+" (String) :: "); myArray[i]=sc.next(); } Set<String> set = new HashSet<>(Arrays.asList(myArray)); System.out.println("Given array is converted to a Set"); System.out.println("Contents of set ::"+set); } }
輸出
Enter the size of the array to be created :: 4 Enter the element 1 (String) :: Ram Enter the element 2 (String) :: Rahim Enter the element 3 (String) :: Robert Enter the element 4 (String) :: Rajeev Given array is converted to a Set Contents of set ::[Robert, Rahim, Rajeev, Ram]
Set轉換為陣列
Set物件提供了一個名為toArray()的方法。此方法接受一個空陣列作為引數,將當前Set轉換為陣列並將其放置在給定的陣列中。使用此方法將Set物件轉換為陣列。
示例
import java.util.HashSet; import java.util.Set; public class SetToArray { public static void main(String args[]){ Set<String> set = new HashSet<String>(); set.add("Apple"); set.add("Orange"); set.add("Banana"); System.out.println("Contents of Set ::"+set); String[] myArray = new String[set.size()]; set.toArray(myArray); for(int i=0; i<myArray.length; i++){ System.out.println("Element at the index "+(i+1)+" is ::"+myArray[i]); } } }
輸出
Contents of Set ::[Apple, Orange, Banana] Element at the index 1 is ::Apple Element at the index 2 is ::Orange Element at the index 3 is ::Banana
廣告