欢迎来到天天文库
浏览记录
ID:40557586
大小:42.00 KB
页数:6页
时间:2019-08-04
《java基础学习笔记之集合.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、java基础学习笔记之集合集合(集合中的数据默认都是object类型,最好使用泛型来指定数据类型) List:常见的有:ArrayList、vecdtor(旧的类,JDK1.2之后又升级的)、LinkedListØ Map:常见的有:HashMap、Hashtable、TreeMapØ Set:常见的有:HashSet、TreeSetØList:List中允许有内容重复的元素,因为在list中的数据是按照下标来排序的,下标不可能相同 ArrayList,实现了list接口,性能高,采用异步处理,但是线程不安全:² publicstaticvoidmain
2、(String[]args){ //TODOAuto-generatedmethodstub Listlist=newArrayList(); list.add("a"); list.add("b"); list.add("c"); list.add("a"); for(Strings:list){ System.out.println(s); } }Linkedlist链表集合,可以模拟链表、堆栈 publicstaticvoidmain(String[]args){ //TODOAuto-gene
3、ratedmethodstub LinkedListlink=newLinkedList(); link.add("aa"); link.add("bb"); link.add("cc"); link.add("dd"); link.add("ee"); intlen=link.size();//先将link的长度取出来 for(inti=0;i4、vet=newVector(); vet.add("a"); vet.add("b"); vet.add(1,"bb");//将bb加到下标为1的元素前面,即加到b前 vet.add("c"); vet.add("hello"); vet.add("world"); vet.remove(0);//删除制定下标的元素 vet.remove("c");//删除制定的元素 for(inti=0;i5、也可以使用泛型,map是根据key来获取value的,其中key不可以相同,如果相同,后一个value值将覆盖前一个value值,如下: Mapmap=newHashMap(); map.put("name","wei"); map.put("age","21"); map.put("sex","female"); System.out.println(map.get("name"));//根据key来取value的值 //如果要遍历,通过keySet()这个方法获取所有key的集合6、 Setkeys=map.keySet(); for(Stringk:keys){ System.out.println(k+" "+map.get(k));//用key来取value值 }注意:map里有自己的一套算法,所以在输出遍历的结果时,不一定是按照我们添加元素的顺序排列出来的Hashtable和HashMap的区别:hashtable是同步处理,性能较低;hashmap是异步处理,性能较高;hashmap可以设置null值,hashtable不能设置null值,否则会出现空指向异常 Map7、ing>hm=newHashMap(); hm.put("name","aa"); hm.put("age",null); System.out.println(hm); 输出的结果为:{age=null,name=aa} Maphtm=newHashtable(); htm.put("name","aa"); htm.put("age",null); System.out.println(htm);输出结果报错:Exceptioninthread"8、main"java.lang.NullPointerException 空指针
4、vet=newVector(); vet.add("a"); vet.add("b"); vet.add(1,"bb");//将bb加到下标为1的元素前面,即加到b前 vet.add("c"); vet.add("hello"); vet.add("world"); vet.remove(0);//删除制定下标的元素 vet.remove("c");//删除制定的元素 for(inti=0;i5、也可以使用泛型,map是根据key来获取value的,其中key不可以相同,如果相同,后一个value值将覆盖前一个value值,如下: Mapmap=newHashMap(); map.put("name","wei"); map.put("age","21"); map.put("sex","female"); System.out.println(map.get("name"));//根据key来取value的值 //如果要遍历,通过keySet()这个方法获取所有key的集合6、 Setkeys=map.keySet(); for(Stringk:keys){ System.out.println(k+" "+map.get(k));//用key来取value值 }注意:map里有自己的一套算法,所以在输出遍历的结果时,不一定是按照我们添加元素的顺序排列出来的Hashtable和HashMap的区别:hashtable是同步处理,性能较低;hashmap是异步处理,性能较高;hashmap可以设置null值,hashtable不能设置null值,否则会出现空指向异常 Map7、ing>hm=newHashMap(); hm.put("name","aa"); hm.put("age",null); System.out.println(hm); 输出的结果为:{age=null,name=aa} Maphtm=newHashtable(); htm.put("name","aa"); htm.put("age",null); System.out.println(htm);输出结果报错:Exceptioninthread"8、main"java.lang.NullPointerException 空指针
5、也可以使用泛型,map是根据key来获取value的,其中key不可以相同,如果相同,后一个value值将覆盖前一个value值,如下: Mapmap=newHashMap(); map.put("name","wei"); map.put("age","21"); map.put("sex","female"); System.out.println(map.get("name"));//根据key来取value的值 //如果要遍历,通过keySet()这个方法获取所有key的集合
6、 Setkeys=map.keySet(); for(Stringk:keys){ System.out.println(k+" "+map.get(k));//用key来取value值 }注意:map里有自己的一套算法,所以在输出遍历的结果时,不一定是按照我们添加元素的顺序排列出来的Hashtable和HashMap的区别:hashtable是同步处理,性能较低;hashmap是异步处理,性能较高;hashmap可以设置null值,hashtable不能设置null值,否则会出现空指向异常 Map7、ing>hm=newHashMap(); hm.put("name","aa"); hm.put("age",null); System.out.println(hm); 输出的结果为:{age=null,name=aa} Maphtm=newHashtable(); htm.put("name","aa"); htm.put("age",null); System.out.println(htm);输出结果报错:Exceptioninthread"8、main"java.lang.NullPointerException 空指针
7、ing>hm=newHashMap(); hm.put("name","aa"); hm.put("age",null); System.out.println(hm); 输出的结果为:{age=null,name=aa} Maphtm=newHashtable(); htm.put("name","aa"); htm.put("age",null); System.out.println(htm);输出结果报错:Exceptioninthread"
8、main"java.lang.NullPointerException 空指针
此文档下载收益归作者所有