在 Java 中实现 ArrayList 和数组互转
在这个例子中,我们将学习在 Java 中将 ArrayList 转换为数组,或将数组转为 ArrayList。
要理解此示例,您应该具备以下 Java 编程的知识:
示例 1:将 Arraylist 转换为 Array
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<String> languages= new ArrayList<>();
// Add elements in the arraylist
languages.add("Java");
languages.add("Python");
languages.add("JavaScript");
System.out.println("ArrayList: " + languages);
// Create a new array of String type
String[] arr = new String[languages.size()];
// Convert ArrayList into the string array
languages.toArray(arr);
System.out.print("Array: ");
for(String item:arr) {
System.out.print(item+", ");
}
}
}
输出
ArrayList: [Java, Python, JavaScript]
Array: Java, Python, JavaScript,
在上面的例子中,我们创建了一个名为 languages
的 ArrayList. 注意这行代码,
languages.toArray(arr);
这里, toArray()
方法将此 ArrayList 对象转换成一个数组。并将其存储在字符串数组 arr
中.
注意:如果我们不向该 toArray()
方法传递任何参数,该方法将返回该 Object
类型的数组。
示例 2:将 Array 转换为 ArrayList
import java.util.Arrays;
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
// create an array
String[] array = {"Java", "Python", "C"};
System.out.println("Array: " + Arrays.toString(array));
// convert array to arraylist
List<String> languages= new ArrayList<>(Arrays.asList(array));
System.out.println("ArrayList: " + languages);
}
}
输出
Array: [Java, Python, C]
List: [Java, Python, C]
在上面的例子中,我们创建了一个 String
类型的数组。注意这个表达式,
Arrays.asList(array)
在这里, Arrays
类的 asList()
方法将指定的数组转换为一个列表。