Java 集合(set)转换为数组
时间:2020-02-23 14:35:11 来源:igfitidea点击:
在本教程中,我们将学习Java中将set转换为数组。
有很多方法可以将set转换为数组。
1.使用Java 8的流
如果我们使用的是Java 8,我会建议使用此方法。
package org.igi.theitroad;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
public class SetToArrayMain {
public static void main(String[] args) {
//Creating a new HashSet
Set<String> s = new HashSet<String>();
s.add("John");
s.add("Martin");
s.add("Mary");
String[] arr = s.stream().toArray(String[] ::new);
System.out.println(Arrays.toString(arr));
}
}
输出
[John, Martin, Mary]
2.使用toarray()
我们可以直接在SET对象上调用TOARRAY方法,用于Java设置为阵列转换。
package org.igi.theitroad;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
public class SetToArrayMain {
public static void main(String[] args) {
//Creating a new HashSet
Set<String> set = new HashSet<String>();
set.add("John");
set.add("Martin");
set.add("Mary");
String array[] = new String[set.size()];
array = set.toArray(array);
System.out.println(Arrays.toString(array));
}
}
输出
[John, Martin, Mary]
3.使用system.arraycopy()
我们可以使用system.arraycopy for Java设置为列表转换。
package org.igi.theitroad;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
public class SetToArrayMain {
public static void main(String[] args) {
//Creating a new HashSet
Set<String> set = new HashSet<String>();
set.add("John");
set.add("Martin");
set.add("Mary");
String array[] = new String[set.size()];
System.arraycopy(set.toArray(), 0, array, 0, set.size());
System.out.println(Arrays.toString(array));
}
}
输出
[John, Martin, Mary]
4.使用简单的迭代
迭代集合并手动将值放入数组中。
package org.igi.theitroad;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
public class SetToArrayMain {
public static void main(String[] args) {
//Creating a new HashSet
Set<String> set = new HashSet<String>();
set.add("John");
set.add("Martin");
set.add("Mary");
String array[] = new String[set.size()];
int i = 0;
for (String x : set)
{
array[i++] = x;
}
System.out.println(Arrays.toString(array));
}
}
输出
[John, Martin, Mary]

