目的:将得到的数据通过list.set(index,string)方法存入目标数组中
示意源代码:
List<String> orgList = ["张三","李四","王五"];
List<String> desList = new ArrayList<String>(orgList.size());
for(int i=0; i<orgList.size(); i++){
desList.set(i,orgList.get(i));
}
System.out.println(desList);
结果:打印出来的结果为[]
步骤:单步跟踪调试,发现ArrayList的特点是分配的长度为这个List的长度,而size=0。查看源码发现,这里size是指List中元素的个数
解决方案:
List<String> orgList = ["张三","李四","王五"];
List<String> desList = new ArrayList<String>(orgList.size());
for(int i=0; i<orgList.size(); i++){
desList.add(i,orgList.get(i));
}
System.out.println(desList);打印结果:["张三","李四","王五"]
本文介绍如何正确地将一个List中的数据迁移到另一个List,并解决了一个常见的编程错误:使用set方法时,目标List未初始化导致的问题。
1022

被折叠的 条评论
为什么被折叠?



