中易网

java中set和list的区别

答案:1  悬赏:0  
解决时间 2021-01-19 04:52
java中set和list的区别
最佳答案
两个接口都是继承自Collection.

List (inteface)

次序是List 的最重要特点,它确保维护元素特定的顺序.
--ArrayList 允许对元素快速随机访问.
--LinkedList 对顺序访问进行优化,向List
中间插入与移除的开销并不大,具有addFrist(),addLast(),getFirst,getLast,removeFirst和removeLast().这些方法使得LinkedList可当作堆栈/队列/双向队列.

Set (inteface)

存入Set 的每个元素必须唯一,不保证维护元素的次序.加入Set 的Object必须定义equals()方法
--HashSet 为快速查找而设计的Set ,存入HashSet对象必须定义hashCode().
--TreeSet 保护次序的Set ,使用它可以从Set 中提取有序序列.
--LinkedHashSet  具有HashSet的查询速度,且内部使用链表维护元素的次序.

它们之间的存储方式不一样:

TreeSet采用红黑树的树据结构排序元素.
HashSet采用散列函数,这是专门为快速查询而设计的.
LinkedHashSet内部使用散列以加快查询速度,同时使用链表维护元素的次序.

使用HashSet/TreeSet时,必须为类定义equals();而HashCode()是针对HashSet,作为一种编程风格,当覆盖equals()的时候,就应该同时覆盖hashCode().
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
延吉乐喜锗床要整夜开着来保持温度吗
广西广电网络(005乡道与216省道交叉口西南100
陌夏时喜欢哪个明星?微博ID是多少,,急急急
中国邮政储蓄银行(孟公镇支行)怎么去啊,我要
有没有懂法律的人,我家人被砍伤了。
求一篇加入实验班的自我介绍模版 内容是个人
干性皮肤用伊思 奥尔滨 黛珂哪个好
卓越教育(沙陀营路)地址有知道的么?有点事想
谁能告诉我这个是做什么用的?买保险送的厨房
英国大学拒信后再申请:成功的几率有多大
消防有服役章吗求回复
晓晓音乐教室怎么去啊,有事要去办理
岳云鹏和宋小宝谁更有实力?
双庙河乡中学地址在哪,我要去那里办事
留恋忘返知迷途,心似峰烟醉缠绵,欲缺不能前
推荐资讯
有关狭义相对论“钟慢效应”的问题 (急)
《教父3》的IMDB评分为什么会这么低?
佛教宗派的各宗大概
全部办齐12到13万的suv车,那个比较好?
钢琴中上波音一定是要往上升一个音的吗
上胸围90,下胸围80,该穿多大的文胸?该怎样
总裁豪门小说免费阅读5707
请问协商中商意思是
45分之14乘21分之14等于多少? 58分之12乘36分
泡菜炒粉条怎么做
宋朝为什么要从辽人手中购买燕云十六州
北环洗车场地址有知道的么?有点事想过去
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?