在 Java 中将数组转换为 ArrayList

在上一篇文章中,我们看到了如何使用 example 将 ArrayList 转换为数组。在本教程中,我们将做相反的事情:将 ArrayList 转换为 array.

1) 将数组元素复制到 ArrayList

此方法包括遍历数组元素并将它们一一复制到 ArrayList.

import java.util.ArrayList;

public class ArraylistToTable {

public static void main(String[] args) {

ArrayList t = new ArrayList();
String[] classes = {健康课程” ,建筑在线课程”,
电工课程”};
//将 obj 值复制到 t
列表中<字符串>al = (ArrayList<字符串>)toArrayList(类);
//显示
for(int i=0; i < al .size(); i++)
System.out.println(al.get(i));
}

静态列表 toArrayList(T[] Array){
列表 al = new ArrayList();
for(T obj: Table)
al.add(obj);
返回 al;
}
}

2) Arrays.asList()

Arrays.asList()转换为单行。

import java.util.ArrayList;
导入 java.util.Arrays;
import java.util.List;

public class ArraylistToTable {

public static void main(String[] args) {

String[] card = {visaCard” ,MasterCard” , AmericanExpress”};

ArrayList al = new ArrayList(Arrays.asList(card));

//显示
for(int i=0; i < al.size(); i++)
System.out.println(al.get(i));
}
}
输出:

visaCard
MasterCard
AmericanExpress
避免使用类型 List因为我们会遇到两个问题:
  • asList() 返回的大小是固定的,如果你删除或添加元素,你必须在新的 ArrayList() 中执行,否则你会有异常;UnsupportedOperationException.
  • 返回的数组链接到原始数组,如果修改原始数组,列表也会被修改.
List l = Arrays.asList(card);
//编辑原始数组
card[0]=Neteller”;

for(int i=0; i < l.size(); i++)
System.out.println(l.get(i));
Output

Neteller
MasterCard
AmericanExpress

3) Collections.AddAll()

另一种方式等效于 asList()Collections.AddAll()。这种方法更有效、更快捷,我们可以说它是转换为 ArrayList.

import java.util.ArrayList;
导入 java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class ArraylistToTable {

public static void main(String[] args) {

List al = new ArrayList();
String[] titles = {title1, title2, title3”};

Collections.addAll(al, titles);

//显示
for(int i=0; i < al.size(); i++)
System.out.println(al.get(i));
}
}
输出:

title1
title2
title3