Java集合总结

1.Collection(接口),被实现。实现类常常需要提供两个构造方法:无参数的,一个Collection对象的单参数构造方法,进行复制。

2.Collection集合分类:

@1.有序,无序之分

  • List(接口):序列,有序,添加、查询的位置可控。这些实现类都必须重写接口中的方法,来实现可修改的序列。
  • Set()

@2.元素是否可以重复之分

  • List(接口)

@3.对集合中的元素是否有限制之分。

@4.集合是否是同步的

3.对于开发中,我们直接使用其实现好的子类即可了,往往不需要我们去实现接口,重写方法。

针对JDK中已经实现的集合类,给出如下使用总结:

  • ArrayList(不同步,适合单线程)、Vector(同步,适合多线程)通过数组实现,数组大小可变。允许null元素,可多个。获取iterator后,必须使用iterator的remove,add方法,对列表进行修改,否则失败。当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半
  • LinkedList(不同步),可以堆栈、队列,或者双端队列。允许null元素,可多个获取iterator后,必须使用iterator的remove,add方法,对列表进行修改,否则失败
  • HashSet(不同步),null至多一个获取iterator后,必须使用iterator的remove方法,对列表进行修改,否则失败。迭代顺序会变动。
  • TreeSet(不同步)迭代顺序可以固定,根据元素自然顺序或者制定,构造方法指定。
  • HashTable(同步的),允许null元素作为键或值。使用iterator迭代器修改集合结构。
  • HahsMap(不同步),允许null 值和 null 键,迭代顺序不保证一致。
  • Properties(线程安全) 继承于 Hashtable,
  • Java框架图
  • java性能参考:
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值