容器

本文深入探讨了容器在数据结构领域的应用,详细解释了容器如何解决数组的局限性,包括数组长度不易扩展、元素类型单一等问题。文章还介绍了容器的分类,如Collection、Set、List和Map,并重点阐述了它们的功能与使用场景。同时,文章讨论了如何通过重写Object类中的toString()方法来提高Collection容器的实用性,以及Iterator接口在遍历容器元素时的作用。最后,文章对比了不同类型的容器在性能和功能上的差异,帮助开发者做出更合适的选择。
容器
     1.为什么需要容器
            数组存在缺陷(数组长度难于扩充,数组元素类型必须相同,而容器可以解决这个问题
           
            
     2.容器的分类
              Collection
                  set   --HashSet          没有顺序,不可以重复
                  list  --LinkList,ArrayList   有顺序,可以重复,有add,set,indexOf方法	 	
                   	
              Map       --HashMp          键(key) -  值(value)
                                          方法:Object get(Object key)
                                                Object put(Object key,Object value)
              
              细节:建议所有添加到Collection容器中的类都重写父类Object中toString()方法
              
     3.Collection类
     
     4.Comparable接口
             所有可以排序的类都实现了Comparable接口,其中都实现了public int compareTo(Object ob)这个方法
             
     5.set接口
           equals()和hashCode()方法:Hashtable,HashSet,HashMap需要重写这两个方法,而TreeSet()和TreeMap()不用
           HashSet()性能一般优于TreeSet(),当需要排序的时候可以用TreeSet()
             
     5.Iterator接口
          boolean hasNext()
          Object next():先返回游标右边的元素,然后游标右移一个位置
          void remove()
     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值