您的位置:首页 > 编程语言 > Java开发

在java 中,数组与 List<T> 类型的相互转换

2015-10-27 22:08 579 查看
在java中,数组与List<T> 之前进行互相转换,转换方法可总结为以下几种:

一、 将 数组转换成List<T>

1. 使用 Collections 的addAll 方法

String[] myStr = {"1","2","4","9","7"};
List<String> listStr = new ArrayList<String>();
Collections.addAll(listStr,myStr);


2. 使用 Arrays.asList()方法

String[] myStr = {"1","2","4","9","7"};
List<String> listStr = Arrays.asList(myStr);


Arrays.asList() 返回一个受指定数组支持的固定大小的列表.所以不能做 Add Remove 等操作.如果要进行 Add Remove 等操作可以这样声明:

List<String> listStr = new ArrayList(Arrays.asList(myStr));


3. 用 for 循环遍历

String[] myStr = {"1","2","4","9","7"};
List<String> listStr = new ArrayList<String>(myStr.length);
for( String str : myStr){
listStr.add(str);
}


二、 将list 转换成数组

1. 使用 toArray() 方法

ist<String> listStr = new ArrayList<String>();
listStr.add("3");
listStr.add("6");
listStr.add("8");

Object[] obj = listStr.toArray();


如果要转换成 String[] 类型的数组,需要进行强制转换,使用以下语句:

String[] arrayStr = (String[])listStr.toArray();


2. 使用for 语句来遍历

List<String> listStr = new ArrayList<String>();
listStr.add("3");
listStr.add("6");
listStr.add("8")

String [] myStr = new String[](listStr.size());
for( int i=0;i<listStr.length; i++){
myStr[i] = listStr[i];
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: