哈希表存值 hasset Linkedhasset及List和set总结

本文详细介绍了Java中List与Set集合的区别,包括它们的特点、应用场景及内部实现原理。List集合有序且允许重复元素,提供了按索引操作的方法;而Set集合元素唯一不可重复,通过重写hashCode()与equals()方法来保证元素的唯一性。此外还对比了ArrayList与LinkedList在不同操作上的性能差异。

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

1.1 知识点总结

l List与Set集合的区别?

List:

  它是一个有序的集合(元素存与取的顺序相同)

  它可以存储重复的元素

  Set:

  它是一个无序的集合(元素存与取的顺序可能不同)

  它不能存储重复的元素

l List集合中的特有方法

l void add(int index, Object element) 将指定的元素,添加到该集合中的指定位置上

l Object get(int index)返回集合中指定位置的元素。

l Object remove(int index) 移除列表中指定位置的元素, 返回的是被移除的元素

l Object set(int index, Object element)用指定元素替换集合中指定位置的元素,返回值的更新前的元素

l ArrayList:

底层数据结构是数组,查询快,增删慢

l LinkedList:

底层数据结构是链表,查询慢,增删快

l HashSet:

元素唯一,不能重复

底层结构是 哈希表结构

元素的存与取的顺序不能保证一致

如何保证元素的唯一的?

重写hashCode() equals()方法

l LinkedHashSet:

元素唯一不能重复

底层结构是 哈希表结构 + 链表结构

元素的存与取的顺序一致


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值