集合概述

* 主要集合概述

  - 集合相当于现实世界中的容器,主要包含两种存放模式,一个一个的存(Collection),  一对一对存(Map[key,value])

  - 集合中只能存储引用数据类型,不能存储基本数据类型。

  - 所有的集合都是可迭代的。

  -java集合主要有三种重要类型

  List  是一个有序集合可以放重复的数据(有序可重复)

  Set   是一个无序集合 不允许放重复数据(无序不可重复)

  Map   是一个无序集合,集合中包含一个键对象,一个值对象,键对象不允许重复,值对象可以重复(例如:身份证号和姓名)

   * 集合在  java.util下

   * 集合 Collection 中接口关系 (--->代表下一级继承关系  / 代表平级关系  )

  - 因为父接口 Iterable中有iterator()方法,而其下所有接口集合都继承了 Iterable,所以所有的集合都有 (iterator方法),所有集合调用iterator()方法后返回一个iterator接口迭代
器,集合获取到iterator接口迭代器之后,就可以使用迭代器去遍历集合。 — terator接口迭代器中有三个遍历方法: - boolean hasNext() : 如果集合中仍有元素,还可以继续迭代则返回true,否则false。 - next() : 返回迭代的下一个元素。 - remove(): 从迭代器指向的 collection 中,移除迭代器返回的最后一个元素。 - 关系图 ![](https://img2020.cnblogs.com/blog/2334081/202103/2334081-20210331181629286-1943179493.jpg) <interface>: Iterable(接口)----中有---(iterator()方法) Iterable(接口)--->Collection(接口)--(调用iterator()方法)--得到 iterator接口迭代器(作用:遍历集合) <interface>: iterator 接口---> boolean hasNext()/next()/remove() 方法 (作用:遍历集合) <interface>: Iterable(接口)--->Iterable(接口)--->Collection(接口)--->List(接口)/Set(接口) <class> : List(接口)---> ArrayList/LinkedList/Vector(类) <class> : Set(接口)---> HashSet()类/SortedSet子接口 Set(接口)---> SortedSet子接口--->TreeSet类 - Collection集合的特点 > List 集合存储数据的特点:有序可重复,存进去什么顺序,取出来还是什么顺序 > Set 集合存储元素的特点:无序不可重复,存进去什么顺序,取出来不一定按照该顺序 > SortedSet集合存储数据的特点:无序不可重复的,但是存储进去的元素可以按照元素的大小自动排序 - Collection 集合中各类(class) 的特点 > ArrayList: ArrayList底层是采用数组存储元素的,所以ArrayList适合查询,不适合频繁的增删元素 > LinkedList: LinkedList底层是采用双向链表这种数据结构存储数据的,链表适合增删元素,不适合查询操作。 > Vector: Vector底层也是使用的数组存储元素,和ArrayList相似,但是Vector是线程安全的(可以在多线程环境下使用),但是效率较低。 > HashSet : 哈希表/散列表 > TreeSet :TreeSet是有序的Set集合,因此支持add、remove、get等方法。

Day07_34_集合概述的更多相关文章

  1. 《java集合概述》

    JAVA集合概述: Collection: |---List有序的:通过索引就可以精确的操作集合中的元素.元素是可以重复的. List提供了增删改查的动作. 增加add(element) add(in ...

  2. Java基础知识强化之集合框架笔记38:Set集合之Set集合概述和特点

    1. Set集合概述和特点 Collection            |--List                     有序(存储顺序和取出顺序一致),可重复            |--Se ...

  3. Java集合概述、Set集合(HashSet类、LinkedHashSet类、TreeSet类、EnumSet类)

    Java集合概述.Set集合(HashSet类.LinkedHashSet类.TreeSet类.EnumSet类) 1.Java集合概述1)数组可以保存多个对象,但数组长度不可变,一旦在初始化数组时指 ...

  4. Java笔记:Java集合概述和Set集合

    本文主要是Java集合的概述和Set集合 1.Java集合概述 1)数组可以保存多个对象,但数组长度不可变,一旦在初始化数组时指定了数组长度,这个数组长度就是不可变的,如果需要保存数量变化的数据,数组 ...

  5. Map集合概述和特点

    A:Map集合概述和特点(Set底层依赖的是Map) 将键映射到值的对象 一个映射不能包含重复的键 每个键最多只能映射到一个值 B:Map接口和Collection接口的不同 Map是双列的(是双列集 ...

  6. 第8章-Java集合 --- 概述

    第8章-Java集合 --- 概述 (1)Java集合类是一种特别有用的工具类,可以用于存储数量不等的多个对象,并可以实现常用的数据结构,如 栈.队列等. (2)Java集合大致可分为Set.List ...

  7. Java集合--概述

    目录 Java集合--概述 摘要 图示 正文 Java集合--概述 摘要 ​ 本文主要介绍集合的整体概念,并作为接下来Java集合实现类讲解的索引. 图示 ​ 这是在网上看到了这样一张图,感觉很清晰, ...

  8. C#集合概述

    C#集合概述 2016-11-29 集合 顺序排列 连顺存储 直接访问方式 访问时间 操作时间 备注 Dictionary 是 Key Key:O(1) O(1) 访问性能最快,不支持排序 Sorte ...

  9. Java精选笔记_集合概述(Collection接口、Collections工具类、Arrays工具类)

    集合概述 集合有时又称为容器,简单地说,它是一个对象,能将具有相同性质的多个元素汇聚成一个整体.集合被用于存储.获取.操纵和传输聚合的数据. 使用集合的技巧 看到Array就是数组结构,有角标,查询速 ...

随机推荐

  1. Glibc堆管理机制基础

    最近正在学习linux下堆的管理机制,收集了书籍和网络上的资料,以自己的理解做了整理,做个记录.如果有什么不对的地方欢迎指出! Memory Allocator 常见的内存管理机制 dlmalloc: ...

  2. Java流程控制:顺序结构

    一.流程控制 Java中的流程控制语句可以这样分类:顺序结构.选择结构.循环结构.这三种结构就足够解决所有的问题了! 二.顺序结构 描述: Java流程控制的基本结构就是顺序结构,除非特别指明,否则J ...

  3. How DRI and DRM Work

    How DRI and DRM Work Introduction This page is intended as an introduction to what DRI and DRM are, ...

  4. mysql查询缓存简单使用

    MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBM ...

  5. 技术基础 | 在Apache Cassandra中改变VNodes数量的影响

    Apache Cassandra中num_tokens的默认值在4.0版本中将会有变化!这看起来好像只是在CHANGES.txt文件中做了个小小的改动,但实际上这个改动将会对集群的日常运维有着深远的影 ...

  6. 打造综合性智慧城市之朔州开发区 3D 可视化

      前言 近几年,我国智慧城市建设步伐也不断加快,党中央和国务院也更加注重智慧园区的建设与发展,智慧园区建设与园区产业发展相结合,向着创新化.生态化发展,更加注重高新技术.绿色环保型等产业的发展,将管 ...

  7. Windows下用户手册

      (1)net user(查看系统用户) (2)net user 用户名(查看具体某个系统用户详细信息) (3)net user 用户名 密码 /add(在本地组成员创建新用户,此时为Users组) ...

  8. Jmeter性能常见问题集锦

    1. java.net.BindException: Address already in use: connect 开始以为是单机运行脚本运行不过来,所以另加了一台负载机同时运行脚本 分布式环境部署 ...

  9. TIOBE 编程语言排行榜

    https://www.tiobe.com/tiobe-index/ TIOBE 编程语言排行榜是编程语言流行趋势的一个指标

  10. POJ_2253 Frogger 【最短路变形】

    一.题目 Frogger 二.分析 题意关键点就是那个青蛙距离.就是所有1到2的点的路径中,每条路径都可以确定一个最大值,这个最大值就是青蛙要跳的青蛙距离,然后要求这个青蛙距离最小值. 其实就是最短路 ...