集合概述

* 主要集合概述

  - 集合相当于现实世界中的容器,主要包含两种存放模式,一个一个的存(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. base64图片显示问题

    1.问题描述 小程序项目需要后端接口提供base64流的图片,对于H5的语法,前面拼接后面的代码即可: data:image/png;base64, 先看后台代码: @RestController @ ...

  2. 答不上的JUC笔试题

    1:有一个总任务A,分解为子任务A1 A2 A3 ...,任何一个子任务失败后要快速取消所有任务,请写程序模拟. 「请寻求最优解,不要只是粗暴wait()」 本题解题思路:Fork/Join 通常使用 ...

  3. Java基础语法:包机制

    为了更好地组织类,Java 提供了包(package)机制. 这种机制是为了防止命名冲突,访问控制,提供搜索和定位类(class).接口(interface).枚举(enumerations)和注释( ...

  4. Hexo一键部署到阿里云OSS并设置浏览器缓存

    自建博客地址:https://bytelife.net,欢迎访问! 本文为博客自动同步文章,为了更好的阅读体验,建议您移步至我的博客 本文作者: Jeffrey 本文链接: https://bytel ...

  5. 剑指 Offer 19. 正则表达式匹配 + 动态规划

    剑指 Offer 19. 正则表达式匹配 题目链接 一. 字符串匹配大致可以分为三种情况: 第一种:正则串的最后一个字符为正常字符,此时根据主串的最后一个字符是否和它相同来判断是否匹配, 如果相同,则 ...

  6. JVM 中的异常

    StackOverflowError 在 JVM 的栈中,如果线程要创建的栈帧大小大于栈容量的大小时,就会抛出 java.lang.StackOverflowError.比如下面的代码 public ...

  7. Python2021哔哩哔哩视频爬取

    一.找到想要爬取的视频,进入网页源代码 在网页源代码里面可以很容易的找到视频各种清晰度的源地址 二.对地址发送请求 如果对视频源地址发送get请求会返回403 通过按F12进入开发者工具分析 发现并不 ...

  8. Java方法:练习,控制台简易计算器

    可以更改计算个数的简易计算器 package com.zdz.method; import java.util.Scanner; public class Operator { public stat ...

  9. spring-boot记录sql探索

    目标记录每次请求内的http.es.mysql耗时,本篇讨论mysql部分 为什么说要探索,这不是很简单的事么?但是能满足以下几点么? 能记录limit等参数 能将参数和sql写一起,能直接使用 能记 ...

  10. IPFS是什么?IPFS与Filecoin有什么关系?

    Filecoin 基于 IPFS 的去中心化存储网络,是 IPFS 上唯一的激励层,是一个基于区块链技术发行的通证.Filecoin 翻译过来就是文件币,简称为 FIL. 在 FIlecoin 网络中 ...