HashMap,HashTable,HashSet的区别,List,Map的区别,ArrayList,LinkedListvector的区别,Overload,Override的区别

本文详细比较了HashMap和HashTable的特性,指出HashMap是非同步的而HashTable是同步的。同时,分析了HashSet的实现原理,它是基于HashMap实现的。此外,解释了List和Map的主要区别,List存储单列有序可重复数据,而Map存储键值对无序且Key不重复。ArrayList和LinkedList在性能上的差异在于ArrayList适合遍历,插入删除效率较低,反之LinkedList适合插入删除但遍历效率低。最后,提到了线程安全和非线程安全的集合类,并列举了支持排序的集合类。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

HashMap和HashTable的比较:

HashMap和HashSet的比较:

看HashSet源码可发现,HashSet底层是基于HashMap实现的,除去clone()方法、writeObject()方法、readObjcet()方法是自己实现之外,其余方法都是直接调用HashMap里的方法。

list与map的区别:

List:是存储单列数据的集合,存储的数据是有序并且是可以重复的
Map:存储双列数据的集合,通过键值对存储数据,存储 的数据是无序的,Key值不能重复,value值可以重复。

ArrayList 与LinkedList的区别:

ArrayList 在新增和删除元素时,因为涉及到数组复制,所以效率比 LinkedList 低,而在遍历的时候,ArrayList 的效率要高于 LinkedList。”

ArrayList 与vector的区别:

1.ArrayList是非线程安全高效率,vector是线程安全低效率。

2.ArrayList扩容的时候每次扩容1.5倍,vector扩容的时候每次扩容2倍。

Overload与Override的区别:

1.Overload方法名称相同,参数的类型或个数不同。

   Override方法名称,参数类型,返回值全部相同。

2.Overload对权限没有要求。

  Override被重写的方法不能拥有更高的权限。

3.Overload发生在一个类中。

   Override发生在继承类中。

几个线程安全类:vector,Hashtable,stack

线程不安全类:ArrayList,Linkedlist,Hashset,Treeset,HashMap,TreeMap等

支持排序的类有:Hashset,Lin可调Has和set,Treeset等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值