List、Set和Map接口的特点与常用的实现类

List 和 Set 实现了 Collection 接口。


List:

  • 允许重复的对象
  • 可以插入多个 null 元素
  • 是有序容器,保持了每个元素的插入顺序
  • 常用的实现类有 ArrayList、LinkedList 和 Vector。ArrayList,它提供了使用索引的随意访问,LinkedList 更合适经常添加或删除元素的场景

 

Set:

  • 不允许重复对象
  • 只允许一个 null 元素
  • Set 接口最常用的几个实现类是 HashSet、LinkedHashSet 以及 TreeSet。HashSet 基于 HashMap 实现;LinkedHashSet 按照插入排序;TreeSet 通过 Comparator 或 Comparable 接口实现排序

 

Map:

  • 是单独的顶级接口,不是 Collection 的子接口
  • Map 的 每个 Entry 都持有两个对象,key 和 value,key 唯一,value 可为 null 或重复
  • Map 接口常用的实现类有 HashMap、LinkedHashMap、Hashtable 和 TreeMap
  • Hashtable 和 未指定 Comparator 的 TreeMap 不可为 null;HashMap、LinkedHashMap、指定 Comparator 的 TreeMap 的 key 可以为 null

 

 


【Java面试题与答案】整理推荐

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值