欢迎来到天天文库
浏览记录
ID:38417428
大小:2.15 MB
页数:21页
时间:2019-06-12
《尚学堂容器课堂笔记》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、尚学堂容器1,1,3,61个图,1个类,3个知识点,6个接口1个图:下面这个图1个类:Collections类3个知识点:增强的for循环,不重要Generic泛型,这个很重要自动打包,自动解包6个接口:Collection接口Iterator接口List接口,Set接口,Comparable接口,Map接口2121左边的容器是一个一个往里装,右边的容器是一对一对往里装Set接口是没有顺序,并且不可重复的,List接口是有顺序,并且可以重复Map接口是一对一对的往里装什么叫可重复:两个对象之间如何互相
2、equals则可重复什么叫不可重复:两个对象的引用永远不可重复21注:Collectionc=newArrayList();父类引用指向子类对象,提供了最大的灵活性21注:你要重写这个对象的equals你必须重写这个对象的hashCode方法两个对象互相的equals,两个对象必须互相的hashCode例子:importjava.util.*;publicclassBasicContainer{publicstaticvoidmain(String[]args){Collectionc=newHash
3、Set();//父类引用指向子类对象,这样写有很大的灵21活性//也就是说HashSet()可以直接更改成LinkList();相当于换了一种实现,其它不用更改c.add("hello");c.add(newName("f1","l1"));c.add(newInteger(100));c.remove("hello");c.remove(newInteger(100));System.out.println(c.remove(newName("f1","l1")));//如果没有重写equals,则
4、falseSystem.out.println(c);}}classNameimplementsComparable{privateStringfirstName,lastName;publicName(StringfirstName,StringlastName){this.firstName=firstName;this.lastName=lastName;}publicStringgetFirstName(){returnfirstName;}publicStringgetLastName(){
5、returnlastName;}publicStringtoString(){returnfirstName+""+lastName;}publicbooleanequals(Objectobj){//重写了equals方法if(objinstanceofName){Namename=(Name)obj;return(firstName.equals(name.firstName))&&(lastName.equals(name.lastName));}returnsuper.equals(obj);
6、}publicinthashCode(){//重写了hashCode方法returnfirstName.hashCode();}publicintcompareTo(Objecto){Namen=(Name)o;intlastCmp=21lastName.compareTo(n.lastName);return(lastCmp!=0?lastCmp:firstName.compareTo(n.firstName));}}2121例子:importjava.util.ArrayList;importja
7、va.util.Collection;importjava.util.HashSet;publicclassEnhancedFor{/***增强的for循环paramargs*体会set和List的不同*/publicstaticvoidmain(String[]args){//增强的for循环int[]arr={1,2,3,4,5};for(inti:arr){System.out.println(i);}//体会set和List的不同Collectionc=newHashSet();Collect
8、ionc1=newArrayList();c.add(newString("aaa"));c.add(newString("bbb"));c.add(newString("ccc"));c1.add(newString("aaa"));21c1.add(newString("bbb"));c1.add(newString("ccc"));for(Objecto:c){System.out.println(o);//aaacccbbb}for(Object
此文档下载收益归作者所有