我有一个要放入 ArrayList 的资源字符串数组,但是返回的数据类型是字符串数组。string[] 不能直接转换为 ArrayList 而不会收到以下错误:
无法从 String[] 转换为 ArrayList
如何将 String[] 数据类型转换为 ArrayList?
编辑
我有一个适配器,它的构造函数需要一个 ArrayList 和一个我想要填充它的资源字符串数组。
如果您可以使用 a List<String>
(而不是特别是 a ArrayList<String>
),您可以使用:
List<String> list = Arrays.asList(stringArray);
否则,您可以这样做:
ArrayList<String> list = new ArrayList<String>(Arrays.asList(stringArray));
但是,与其他建议的解决方案相比,后者的效率较低(在时间和对象创建计数方面)。它唯一的好处是它将代码精简到一行,并且一目了然。
public ArrayList<String> arrayToArrayList(String[] array){
ArrayList<String> arrayList = new ArrayList<String>(array.length);
for(String string : array){
arrayList.add(string);
}
return arrayList;
}
这个怎么样
import java.util.Collections;
String[] myStringArray = new String[] {"foo", "bar", "baz"};
List myList = new ArrayList(myStringArray.length);
Collections.addAll(myList, myStringArray);