欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 养生 > 集合进阶(接口Collection(迭代器、增强for、Lambda表达式)、List中常见的方法和五种遍历方式、数据结构(栈、队列、数组、链表)

集合进阶(接口Collection(迭代器、增强for、Lambda表达式)、List中常见的方法和五种遍历方式、数据结构(栈、队列、数组、链表)

2024/10/24 3:25:41 来源:https://blog.csdn.net/2301_80287479/article/details/139412758  浏览:    关键词:集合进阶(接口Collection(迭代器、增强for、Lambda表达式)、List中常见的方法和五种遍历方式、数据结构(栈、队列、数组、链表)

一、单列集合顶层Collection

  • List系列集合:添加的元素是有序、可重复、有索引
  • Set系列集合:添加的元素是无序、不重复、无索引

 Collection是单列集合的祖宗接口,它的功能是全部单列集合都可以继承使用的。

Collection的遍历方式

1、迭代器——迭代器不依赖索引

迭代器遍历

迭代器在Java中的类是Iterator,迭代器是集合专用的遍历方式

细节注意点:
1,报错NoSuchElementException

2,迭代器遍历完毕,指针不会复位

3,循环中只能用一次next方法
4,迭代器遍历时,不能用集合的方法进行增加或者删除

2、增强for

  • 增强for的底层就是迭代器,为了简化迭代器的代码书写的。
  • 修改增强for中的变量,不会改变集合中原本的数据。

增强for遍历

  • 增强for的底层就是迭代器,为了简化迭代器的代码书写的。
  • 它是JDK5之后出现的,其内部原理就是一个Iterator迭代器
  • 所有的单列集合和数组才能用增强for进行遍历。

3、Lambda表达式

Lambda表达式的遍历

二、List中常见的方法和五种遍历方式

1、List集合的特点

  • 有序:存和取的元素顺序一致
  • 有索引:可以通过索引操作元素
  • 可重复:存储的元素可以重复

1、List集合的特有方法

  • Collection的方法List都继承了
  • List集合因为有索引,所以多了很多索引操作的方法。

2、List系列集合中的两个删除方法

2、List集合的五种遍历方式及五种遍历方式对比

1、迭代器遍历

2、列表迭代器遍历

3、增强for遍历

4、Lambda表达式遍历

5、普通for循环(因为List集合存在索引)

三、数据结构(栈、队列、数组、链表)

1、数据结构概述

数据结构是计算机底层存储、组织数据的方式。
是指数据相互之间是以什么方式排列在一起的。
数据结构是为了更加方便的管理和使用数据,需要结合具体的业务场景来进行选择。
一般情况下,精心选择的数据结构可以带来更高的运行或者存储效率。

 

问题:1.每种数据结构长什么样子?

           2.如何添加数据?

           3.如何删除数据?

2.常见的数据结构

①栈   ②队列    ③数组     ④链表     ⑤二叉树      ⑥二叉查找树       ⑦平衡二叉树    ⑧红黑树

1、数据结构(队列和栈小结)

2、数据结构(数据)

数组是一种查询快,增删慢的模型

  • 查询速度快:查询数据通过地址值和索引定位,查询任意数据耗时相同。(元素在内存中是连续存储的)
  • 删除效率低:要将原始数据删除,同时后面每个数据前移。
  • 添加效率极低:添加位置后的每个数据后移,再添加元素。

3、数据结构(链表)

 

3、ArrayList集合底层原理

4、LinkedList集合

  • 底层数据结构是双链表,查询慢,增删快,但是如果操作的是首尾元素,速度也是极快的。
  • LinkedList本身多了很多直接操作首尾元素的特有API。

 5、LinkedList和迭代器的源码分析

 

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com