Java集合

集合分:List集合,Set集合,Map集合

集合是java中提供的一种容器,可以用来存储多个数据。

集合和数组既然都是容器,它们有啥区别呢?

  • 数组的长度是固定的。集合的长度是可变的。

  • 数组中可以存储基本数据类型值,也可以存储对象,而集合中只能存储对象

List集合:

java.util.List接口继承自Collection接口,是单列集合的一个重要分支,习惯性地会将实现了List接口的对象称为List集合。

List接口特点:

  • 查询慢,增删快
  • 可以通过下标索引来操作
  • 有序且可以重复

注意:List集合关心元素是否有序,而不关心是否重复,请大家记住这个原则。例如“张三”可以领取两个号。

常用方法:

List除了从Collection集合继承的方法外,List 集合里添加了一些根据索引来操作集合元素的方法。

1、添加元素

  • void add(int index, E ele)

  • boolean addAll(int index, Collection<? extends E> eles)

2、获取元素

  • E get(int index)

  • List subList(int fromIndex, int toIndex)

3、获取元素索引

  • int indexOf(Object obj)

  • int lastIndexOf(Object obj)

4、删除和替换元素

  • E remove(int index)

  • E set(int index, E ele)

List集合特有的方法都是跟索引相关:

效果:

 

 Set集合

Set接口是Collection的子接口,set接口没有提供额外的方法。但是比Collection接口更加严格了。

特点:

  • 查询慢,增删快
  • 不可以通过下标索引操作
  • 无序且不重复

Set集合支持的遍历方式和Collection集合一样:foreach和Iterator。

HashSet:

HashSet 是 Set 接口的典型实现,大多数时候使用 Set 集合时都使用这个实现类。

java.util.HashSet底层的实现其实是一个java.util.HashMap支持,然后HashMap的底层物理实现是一个Hash表。

HashSet 按 Hash 算法来存储集合中的元素,因此具有很好的存取和查找性能。

效果:

 

Map接口:

  • Map中的集合,元素是成对存在的。每个元素由键与值两部分组成,通过键可以找对所对应的值。

  • Collection中的集合称为单列集合,Map中的集合称为双列集合。

  • 需要注意的是,Map中的集合不能包含重复的键,值可以重复;每个键只能对应一个值(这个值可以是单个值,也可以是个数组或集合值)。

Map实现类之一:HashMap

  • HashMap是Map接口使用最频繁的实现类
  • 通过键值对(key-value)来存取数据
  • 所有的key构成的集合Set:无序,不可重复

效果:

  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值