我是靠谱客的博主 标致薯片,最近开发中收集的这篇文章主要介绍JAVA基础——【笔记】14.集合,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

集合的框架体系:

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

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

  • 数组的不足(集合需求的出现):

在这里插入图片描述

  • 集合特点:

在这里插入图片描述

一、Collection接口方法

在这里插入图片描述

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

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

在这里插入图片描述

2、Collection接口遍历元素方式

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

① 使用Iterator(迭代器)
在这里插入图片描述

迭代器原理:
在这里插入图片描述

示例:

在这里插入图片描述

② 使用 增强for循环

在这里插入图片描述

示例:

在这里插入图片描述

③普通for循环

在这里插入图片描述

二、List接口和常用方法

1、List接口介绍:

在这里插入图片描述

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

2、List接口常用方法:

在这里插入图片描述

3、ArrayList注意事项

在这里插入图片描述

4、ArrayList扩容机制

在这里插入图片描述

5、Vector注意事项

  • 基本介绍

在这里插入图片描述

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

  • ArrayList比较Vector
    在这里插入图片描述

6、LinkedList

  • 说明

  • LinkedList的底层操作机制

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

在这里插入图片描述

  • LinkedList的增删改查案例

在这里插入图片描述

  • ArrayList和LinkedList的比较
    在这里插入图片描述

三、set接口和常用方法

1、基本介绍

在这里插入图片描述

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

2、常用方法

在这里插入图片描述

实例:
在这里插入图片描述

3、HashSet

①说明

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

在这里插入图片描述

②HashSet扩容机制
在这里插入图片描述

底层机制简要说明:
在这里插入图片描述

4、LinkedHashSet

Set接口实现类—LinkedHashSet

说明:(有序,插入取出顺序一样,但插入表时不规律存储)、不重复)
在这里插入图片描述

底层源码解读:

在这里插入图片描述

三、Map接口

1、Map接口特点

  • Map接口常用方法
    在这里插入图片描述

  • key相同,value不同时,新value替代旧value

  • Map语法

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

2、Map接口常用方法

  • 常用方法

在这里插入图片描述

  • Map接口六大遍历方式

在这里插入图片描述

解析:

1、(少使用)

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

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

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

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

小结:

在这里插入图片描述

3、HashTable的基本介绍

  • 基本介绍
    在这里插入图片描述

  • 扩容机制:
    在这里插入图片描述

HashMap和HaspTable对比

在这里插入图片描述

4、Map接口实现类Properties

  • 基本介绍
    在这里插入图片描述

  • 常用基本方法:

增删改查(获取值)

在这里插入图片描述

四、集合选型

在这里插入图片描述

  • 其中 :

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

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

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

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

五、Collections工具类

  • 介绍
    在这里插入图片描述

  • 例:

在这里插入图片描述

最后

以上就是标致薯片为你收集整理的JAVA基础——【笔记】14.集合的全部内容,希望文章能够帮你解决JAVA基础——【笔记】14.集合所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部