实线代表继承,虚线代表实现。
单列集合
- List
- Set
双列集合
- Map
对比
| 区别 | List | Set | Map |
|---|---|---|---|
| 重写toString()方法 | 抽象类AbstractCollection中重写 | 抽象类AbstractCollection中重写 | 抽象类AbstractMap类中重写 |
| other | Set的底层是基于Map实现的 |
Collection的概念是JDK1.2版本出现的;List中的Vector、Map中的HashTable是JDK1.0出现的。
Vector已被ArrayList取代,HashTable已被HashMap取代。
尽管 Vector、HashTable是线程安全的,ArrayList、HashMap是线程不安全的,但Collections.synchronizedXXX()方法可以让线程不安全的变为线程安全的。所以,不用担心线程安全的问题。
本文详细介绍了Java集合框架中的List、Set和Map的区别与联系,并探讨了它们的底层实现原理。此外,还讨论了Vector和HashTable的历史地位及被替代的原因。
626

被折叠的 条评论
为什么被折叠?



