List中一些知识(项目中有时候会碰到,于新手而言)
2016-07-31 21:50
253 查看
1.有关list中报空指针异常的问题:
a.没有对list进行初始化,系统没有给list分配内存空间,此时对list进行操作(add,遍历,.size())都会报空指针异常
b.进行了初始化,但是给list的值为null,调用也会报空指针
c.所以在不确定list是否有值得情况而进行操作,最好在操作之前先判断,若!list.isEmpty(),在进入操作。
2.list中进行去重的两种方法
3.在两个list进行嵌套循环的时候,注意,在内循环中不要对外循环的list进行各种(add,remove等)操作,会破坏循环结构。对内循环自身的list进行操作后,一定要及时break;重新开始循环。
4.先总结几点,菜鸟总是要不断进步的。
a.没有对list进行初始化,系统没有给list分配内存空间,此时对list进行操作(add,遍历,.size())都会报空指针异常
List list = null; list.size(); 这样就会java.lang.NullPointerException
b.进行了初始化,但是给list的值为null,调用也会报空指针
List list = new ArrayList(); list = null; list.size(); 这样也会java.lang.NullPointerException
c.所以在不确定list是否有值得情况而进行操作,最好在操作之前先判断,若!list.isEmpty(),在进入操作。
2.list中进行去重的两种方法
List list1 = new ArrayList(); List list2 = new ArrayList(); list1.add(1); list1.add(2); list1.add(3); list1.add(4); list1.add(1); list1.add(4); //第一种方法: HashSet hs = new HashSet(list1);//去重完成 list1.clear(); list1.addAll(hs); //第二种方法: for(int i=0; i<list1.size(); i++){ Integer str = (Integer)list1.get(i); //获取传入集合对象的每一个元素 if(!list2.contains(str)){ //查看新集合中是否有指定的元素,没有则加入 list2.add(str); } list2即为去重后的新集合
3.在两个list进行嵌套循环的时候,注意,在内循环中不要对外循环的list进行各种(add,remove等)操作,会破坏循环结构。对内循环自身的list进行操作后,一定要及时break;重新开始循环。
for(int i=0;i<li.size();i++){ for(int j= 0;j<lis.size();j++){ if((li.get(i).get("output_id")).equals((lis.get(j).get("output_id")))){ lis.remove(j); break; } } }
4.先总结几点,菜鸟总是要不断进步的。
相关文章推荐
- 用于项目设计的一些网页设计知识
- java新手必读,一些入门知识。
- 在做项目中学到一些CSS知识
- [程序员知识]一些“不正规”的软件项目招标前小技巧
- [程序员知识]一些“不正规”的软件项目招标前小技巧
- java新手必读,一些入门知识
- 一个新手接触手游项目碰到的bug及解决过程汇总2
- [教程] HTC Incredible S新手教程之:手机刷机前需要知道的一些基础知识
- 新手必看的PHP学习入门的一些基础知识
- 【边做项目边学Android】手机安全卫士08-一些布局和显示的细节:State List
- c++碰到的一些细节知识
- 项目资源文件的加载的一些小知识
- 转载,项目管理一些知识答疑
- 在做ASP.NET项目时用到的一些知识
- 新手学习PHP的一些基础知识
- 关于项目管理的一些知识要点
- C++新手,请推荐一些开源项目的源代码供阅读
- 项目管理的一些知识
- 最近做项目所积累的一些小知识(一)
- 一个新手接触手游项目碰到的bug及解决过程汇总