JAVA基础——【笔记】14.集合
创始人
2024-04-09 00:35:21
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

相关内容

热门资讯

“手术钻头断裂遗留患者体内”,... 12月21日,湖南祁阳市卫生健康局发布情况通报称,近日,有媒体报道祁阳市中医医院发生骨科手术钻头断裂...
代驾纠纷 代驾时撞伤行人、车辆发生故障…… 这些都和车主无关,应由代驾赔偿? 观点: 使用代驾服务并非将所有...
公司股东与妻子分居期间出轨女下... 近日据报道,宁夏永宁县人民法院一审查明公司股东李某乙在与妻子李某甲分居期间,与公司女员工马某某存在不...
动物学家、律师和创作者,Thi... 12月21日,以“一起·了不起”为主题的2025 ThinkPad黑FUN礼在京举办。活动现场,律师...
徐奇渊:扩内需与对外政策紧密相... 近日,中国海关总署发布了一组数据令人关注:2025年前11个月,我国货物贸易顺差达到1.08万亿美元...
46岁上海独居女子不幸离世,官... 居住在上海虹口区46岁的蒋女士因突发脑溢血于今年10月入院,远亲吴先生与其公司共同垫付了医药费,但她...
威海市汽车以旧换新补贴政策调整... 根据稳妥有序开展消费品以旧换新工作统一部署,经研究决定,对我市汽车以旧换新补贴政策进行调整。现将有关...
动物学家、律师、创作者都pic... 12月21日,在2025 ThinkPad黑FUN礼现场,三名专业领域用户用真实案例诠释了Think...
从拒赔到和解:涉外货运保险理赔... 近日,国家金融监管总局、最高人民法院遴选出6个具有典型性、示范性的金融领域纠纷多元化解案例,12月1...