JAVA学习笔记--集合

 集合部分注意的问题:1.各个接口的特点;
                               2.遍历。
                               3.集合能进行的操作。
                               4.其实现类的差异。
           
              1.Collection接口的实现类中的元素是对象Object.
                 集合类:集合可以容纳、管理多个对象。  
             List接口:其实现类存储的元素有顺序,元素可以重复,实现类:Arraylist。
             Set接口:其实现类存储的元素无顺序,元素不可以重复。Set里面有一个SortedSet子接口,可以 自动排序
             2.Map接口:(Key---value)key(键) 是唯一的,value(值)可以重复。里面有一个子接口SortedMap,是 排好顺序的,是对键排序的。
                                                                                        
              3.迭代遍历并输出:   static  void print(Collection con){
                        Iterator it=con.iterator();
                        while(it.hasNext()){
                              Object o= it.next();
                              System.out.println(o);
                          }
                     }          
            
 
             Collections.sort(List list)方法只能对实现了List接口的某个类的某个对象中的元素进行排序,例如:可以对ArrayList中的元素排序,可以对LinkedList中的元素排序,可以对Vector中的元素排序。
 
       4.  只有实现了Comparable接口(即实现compareTo()方法)(在lang包里,不用导入) 的类的对象才能实现排序。即集合类中存储的对象,只有这些对象都是已经实现了Comparable接口(实现compareTo()方法)的类的对象,则才可以对这些对象进行排序。这些对象必须是同一个类的对象,否则不能比较!!
             public int compareTo(Object o){
                     Student s=(Student) o;
                      if(this.age<s.age)  return -1;
                     else if(this.age>s.age)  return 1;
                        else return 0;            
              }
 
 
            实现compareTo方法时,public int compareTo(Object obj)保证如果this>obj   return 1;如果this <0bj  则 return -1,否则return 0;  即可。此时,collections.sort(XX);排序出来的就是升序排列。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值