说一说java集合类

1、java集合类的结构图:

 
2、List、Set、Map各种实现的差别:

 

List:用于存放可重复的对象

Set:用于存放不可重复的对象

Map:存放键值对

ArrayList适合随机访问;LinkedList适合插入和删除;HashSet使用散列,查询速度较快;TreeSet使用红黑树存储,默认按字典顺序排序;LinkedHashSet按插入顺序保存元素;HashMap快速访问;TreeMap按默认规则排序;LinkedHashMap按插入顺序保存同时提供快速访问能力;HashMap非同步不安全;HashTable同步安全;Vector、Stack也是同步安全的。

3、重写equals方法和hashCode方法,一定要保证相同的对象,这2个方法返回相同的值。

4、treeSet和treeMap,对于放入其中的对象都要去实现comparable接口以实现排序:

在重写compareTo方法时,整数值的情况不能直接相减,这样可能会造成溢出。

5、UnsupportException、CurrentModifitionException都是由于底层结构为数组时,不能进行修改操作而抛出的异常:

例如Array.toList得到的List不支持修改操作;在对List使用Iterator进行遍历的时候,不能对list直接进行修改操作,而必须通过Iterator来操作。

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值