JAVA基础——【笔记】14.集合
创始人
2024-04-08 21:42:36
0

集合的框架体系:

image-20221015185954715 image-20221015192847861

List等接口的实现子类有很多,仅列出常用的。

  • 数组的不足(集合需求的出现):
image-20221015190412631
  • 集合特点:
image-20221015190656394

一、Collection接口方法

image-20221015193442857

1、Collection常用方法及其用法:

(Collection为接口,不能直接实例化,需要类实现接口)

image-20221015194726546

2、Collection接口遍历元素方式

如果是Collection接口,可以用迭代器和增强for循环两种方式遍历,如果是List接口的子类还能用普通for

① 使用Iterator(迭代器)

image-20221015200415024

迭代器原理:

image-20221015201740909

示例:

image-20221015204112758

② 使用 增强for循环

image-20221015204811556

示例:

image-20221015205056655

③普通for循环

image-20221017210951323

二、List接口和常用方法

1、List接口介绍:

image-20221017192834270

List集合的元素有序、可重复、有索引(0开始)

2、List接口常用方法:

image-20221017201633940

3、ArrayList注意事项

image-20221018195500104

4、ArrayList扩容机制

image-20221018200632737

5、Vector注意事项

  • 基本介绍
image-20221018212428734

多线程时更适合用Vector,其是线程安全的

  • ArrayList比较Vector
image-20221018212943964

6、LinkedList

  • 说明
image-20221019155502030
  • LinkedList的底层操作机制

添加删除操作效率更高,不是通过数组扩容

image-20221019160609716
  • LinkedList的增删改查案例
image-20221019171009428
  • ArrayList和LinkedList的比较
image-20221019171842481

三、set接口和常用方法

1、基本介绍

image-20221019173731229

添加和取出的顺序不一样,但取出的顺序是固定的,即每次运行都是固定顺序

2、常用方法

image-20221019173832308

实例:

image-20221019174410449

3、HashSet

①说明

image-20221019202046091 image-20221019203720402 image-20221107185341787

②HashSet扩容机制

image-20221107195923405

底层机制简要说明:

image-20221107214609642

4、LinkedHashSet

Set接口实现类—LinkedHashSet

说明:(有序,插入取出顺序一样,但插入表时不规律存储)、不重复)

image-20221108212410042

底层源码解读:

image-20221108213548231

三、Map接口

1、Map接口特点

  • Map接口常用方法
image-20221109213038753
  • key相同,value不同时,新value替代旧value

  • Map语法

    1、添加元素 .put
    map.put(key,value);
    2、通过get()方法获取key对应的value
    map.get("not")
    

2、Map接口常用方法

  • 常用方法
image-20221110201639112
  • Map接口六大遍历方式
image-20221110203040291

解析:

1、(少使用)

2、通过迭代器获取所有键(key),再通过map.get(key)遍历键来获取值 ⭐️

3、通过迭代/循环 EntrySet来获取K-V

4、直接获取所有值(value),再遍历

每种Map遍历方式中又包含可用增强for和迭代器两种遍历的方法.

小结:

image-20221113204027539

3、HashTable的基本介绍

  • 基本介绍
image-20221114165125911
  • 扩容机制:
image-20221114171358753

HashMap和HaspTable对比

image-20221114171602576**

4、Map接口实现类Properties

  • 基本介绍
image-20221114171720361
  • 常用基本方法:

增\删\改\查(获取值)

image-20221114173113664

四、集合选型

image-20221114173415977
  • 其中 :

List中:增删多:双链表增删更快; 改查多:通过数组的索引定位比较快;

插入和取出顺一致,但存储时是无序存储的;

TreeSet具备实现了Comparator接口的compare()方法,重写compare()方法可以自定义排序规则,对Integer类型数据存储顺序默认按数字从小到大排序,字母默认按从a-z排序.

TreeMap类似TreeSet,只是实现了compareable接口的compareTo()方法

五、Collections工具类

  • 介绍
image-20221114212800340
  • 例:
image-20221114212515921 image-20221114214247434

相关内容

热门资讯

银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWS管理控制台菜单和权限 要在AWS管理控制台中创建菜单和权限,您可以使用AWS Identity and Access Ma...