可以使用Arrays.asList
方法和List.toArray
方法来实现数组和List
之间的转换。
要将数组转换为List
,可以使用Arrays.asList
方法。这个方法接受一个数组作为参数,并返回一个固定大小的列表,该列表由指定数组支持。例如,下面的代码将一个字符串数组转换为一个List
:
String[] array = {"one", "two", "three"};
List<String> list = Arrays.asList(array);
要将List
转换为数组,可以使用List.toArray
方法。这个方法返回一个包含列表中所有元素的数组。例如,下面的代码将一个字符串列表转换为一个字符串数组:
List<String> list = new ArrayList<>();
list.add("one");
list.add("two");
list.add("three");
String[] array = list.toArray(new String[0]);
注意,在调用List.toArray
方法时,需要传递一个数组作为参数。这个数组用来指定返回的数组的运行时类型和大小。如果指定的数组大小不够容纳列表中的所有元素,则会自动分配一个新的数组。
除了上面提到的Arrays.asList
和List.toArray
方法外,还可以使用循环来实现数组和List
之间的转换。
要将数组转换为List
,可以创建一个新的List
对象,然后使用循环遍历数组中的每个元素,并将它们添加到列表中。例如,下面的代码将一个字符串数组转换为一个List
:
String[] array = {"one", "two", "three"};
List<String> list = new ArrayList<>();
for (String s : array) {
list.add(s);
}
要将List
转换为数组,可以创建一个新的数组对象,然后使用循环遍历列表中的每个元素,并将它们添加到数组中。例如,下面的代码将一个字符串列表转换为一个字符串数组:
List<String> list = new ArrayList<>();
list.add("one");
list.add("two");
list.add("three");
String[] array = new String[list.size()];
for (int i = 0; i < list.size(); i++) {
array[i] = list.get(i);
}
这些方法虽然也能实现数组和List
之间的转换,但它们相对于使用Arrays.asList
和List.toArray
方法来说更加繁琐。