List、Map、Set三个接口,存取元素时,各有什么特点?
答案:2 悬赏:40 手机版
解决时间 2021-04-23 21:31
- 提问者网友:欲望失宠
- 2021-04-22 23:15
List、Map、Set三个接口,存取元素时,各有什么特点?
最佳答案
- 五星知识达人网友:独行浪子会拥风
- 2021-04-23 00:13
作用域 当前类 同一package 子孙类 其他package
public √ √ √ √
protected √ √ √ ×
friendly √ √ × ×
private √ × × ×
public √ √ √ √
protected √ √ √ ×
friendly √ √ × ×
private √ × × ×
全部回答
- 1楼网友:雾月
- 2021-04-23 01:51
list特点:元素有放入顺序,元素可重复
set特点:元素无放入顺序,元素不可重复(注意:元素虽然无放入顺序,但是元素在set中的位置是有该元素的hashcode决定的,其位置其实是固定的)
map特点:元素按键值对存储,无放入顺序 (应该知道什么是键值对吧!)
list接口有三个实现类:linkedlist,arraylist,vector
linkedlist:底层基于链表实现,链表内存是散乱的,每一个元素存储本身内存地址的同时还存储下一个元素的地址。链表增删快,查找慢
arraylist和vector的区别:arraylist是非线程安全的,效率高;vector是基于线程安全的,效率低
set接口有两个实现类:hashset(底层由hashmap实现),linkedhashset
sortedset接口有一个实现类:treeset(底层由平衡二叉树实现)
query接口有一个实现类:linklist
map接口有三个实现类:hashmap,hashtable,linkehashmap
hashmap非线程安全,高效,支持null;hashtable线程安全,低效,不支持null
sortedmap有一个实现类:treemap
其实最主要的是,list是用来处理序列的,而set是用来处理集的。map是知道的,存储的是键值对
set 一般无序不重复.map kv 结构 list 有序
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯