当前位置:首页 » 《休闲阅读》 » 正文

集合总结(Collection,List,Set,Map)_m0_59619191的博客

23 人参与  2022年01月04日 15:24  分类 : 《休闲阅读》  评论

点击全文阅读


集合

  • 集合体系结构图
    • Collection集合
      • 概述
      • 常用方法
      • 遍历(迭代器)及代码演示
    • List集合
      • 概述(特点)
      • 方法
      • 概述
      • 遍历(三种遍历方式——迭代器,普通for,增强for)
      • List子集的特点和功能
    • Set集合
      • 1.特点
      • 哈希值
      • ①HashSet
      • ②LinkedHashSet集合
      • ③TreeSet集合
    • Map集合
      • **概述:**
      • 特点:
      • 常用方法
      • 获取方法
      • 遍历的两种方式:
  • 总结

在这里插入图片描述

集合体系结构图

在这里插入图片描述

Collection集合

概述

1.单例集合的顶层接口,它表示一组对象,这些对象也称为Collection的元素
2.JDK 不提供此接口的任何直接实现,它提供更具体的子接口(如Set和List)实现

常用方法

在这里插入图片描述

遍历(迭代器)及代码演示

在这里插入图片描述
在这里插入图片描述
代码演示:
在这里插入图片描述

List集合

概述(特点)

  • 有序集合
    允许出现重复的元素
    集合特点:①存储顺序一致 ②存储的元素可以重复 ③有索引

方法

在这里插入图片描述

概述

遍历(三种遍历方式——迭代器,普通for,增强for)

在这里插入图片描述

List子集的特点和功能

ArrayList集合——底层是数组结构实现,查询快、增删慢
LinkedList集合——底层是链表结构实现,查询慢、增删快

LinkedList集合的特有功能在这里插入图片描述

Set集合

1.特点

  • 元素存取无序
  • 没有索引,只能通过迭代器或者增强FOR来遍历
  • 不能存储重复元素

哈希值

  • 概念:JDK根据对象的地址或者字符串或者数字算出来的int类型的数值

  • 获取方法:Object类中的public int hashCode():返回对象的哈希码值

  • 哈希值的特点

  • 1.同一个对象多次调用hashCode()方法返回的哈希值是相同

  • 2.默认情况下,不同对象的哈希值是不同的。而重写hashCode()方法,可以实现让不同对象的哈希值相同

    代码演示:

    在这里插入图片描述
    哈希表:在这里插入图片描述

①HashSet

集合特点:

  • 1.底层是哈希表结构
  • 2.元素存储无序
  • 3.没有索引
  • 4.不能存储重复元素

HashSet集合保证元素唯一性源码分析图解**
在这里插入图片描述
HashSet学生遍历(重点:重写hashCode()和equals()方法,用增强FOR遍历)

在这里插入图片描述
在这里插入图片描述

②LinkedHashSet集合

特点

  • 哈希表和链表实现的Set接口,具有可预测的迭代次序

  • 存储有序

  • 没有重复元素

代码实现
在这里插入图片描述

③TreeSet集合

特点

  • 元素存储有序
  • 没有索引
  • 不能存储重复元素

1.自然排序Comparable(代码演示)
在这里插入图片描述
在这里插入图片描述

2.比较器排序Comparator的使用(代码演示)
在这里插入图片描述
在这里插入图片描述

Map集合

概述:

interface Map<K,V> K:键的类型;V:值的类型

代码演示:
在这里插入图片描述

特点:

  • 1.键值对映射关系
    2.一个键对应一个值
    3.键不能重复,值可以重复
    4.元素存取无序

常用方法

在这里插入图片描述

获取方法

在这里插入图片描述

遍历的两种方式:

①键去获取值(代码演示)
在这里插入图片描述
②键值去获取键和值(代码演示)
在这里插入图片描述

总结

在学习集合中,需要注意单列集合(Collection)和双列(Map)集合的区别(区分它们的遍历方式,分清它们的特点以及代码的具体运用)
在这里插入图片描述


点击全文阅读


本文链接:http://zhangshiyu.com/post/32684.html

集合  遍历  元素  
<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1