迭代器使用和注意事项 | 学习笔记

简介: 快速学习迭代器使用和注意事项

开发者学堂课程【Scala 核心编程 - 进阶迭代器使用和注意事项学习笔记,与课程紧密连接,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/610/detail/9060


迭代器使用和注意事项


内容介绍

一.迭代器的简介

二.应用案例小结

三.基本说明

四.总结说明


一.迭代器的简介

扩展-迭代器

通过 iterator 方法从集合获得一个迭代器,通过 while 循环和 for 表达式对集合进行遍历.


二.应用案例小结

1) iteratpr的构建实际是 Abstractlterator 的一个匿名子类,该子类提供了

def iterator: Iterator[A] = new Abstractlterator[A]{

var these = self

def hasNext: Boolean = !these.isEmpty

def next():A= */

2)该Abstractlterator子类提供了hasNextnext等方法

3)因此,我们可以使用while的方式,使用hasNext next方法变量

我们所有的集合都有继承迭代器,这个发生作用的时候就是如下的情况


三.基本说明

通过iterator方法从集合获得一个迭代器,通过while循环和for表达式对集合进行遍历,在某些情况下就要用迭代器。

学习使用迭代器来遍历. 应用案例

val iterator = List(1,2, 3, 4, 5).iterator II 得到迭代器

println(" 遍历方式1

while (iterator.hasNext){ 用 while 来循环,用副类来得到,这种迭代器要保证之前没有迭代过。

println(iterator.next()) 1 println(" 遍历方式2 for

for(enum <- iterator){

println(enum)//

[案例演示+代码说明

iterator 的继承关系,我们直接从这定位,new 一下,然后所有的东西都会实现,其中里面有两个很重要的方法,迭代器迭代之后就没有了,除非将它储存在一个位置,我们写一个代码,然后运行一下,看是否正确。

如图

image.png

首先第一种我们使用 while 循环,使用迭代器的 while 循环,这个是可以运行的,运行之后我们会发现什么都有,会发现不断的往下走,简单的处理一下,迭代器一个是while ,一个是 for 。

四.总结说明

结构器首先使用 abstractlterator 的一个匿名子类,该子类提供了/ ,以及 abstractlterator 子类提供了 hasnext next 等方法,因此,我们可以使用 while 的方式,使用 hasnext next 方法变量。

首先我们讲了基本说明和案例,迭代器的使用,也就是在 while 中和 for 中可以使用,把代码拷贝过来,对代码小结了一下,一共讲了三点,第一点是迭代器是怎么来的,第二点则是 next 。

相关文章
|
传感器 芯片
数码管显示原理及应用实现介绍1
数码管是一种能够显示数字和简单的字母的显示设备,它由LED(Light Emitting Diode,发光二极管)组成。LED是一种半导体器件,当电流通过它时,会产生光。数码管的每个LED都对应一个数字或字母的形状,通过开启或关闭LED,可以显示所需的数字或字母。 数码管可以分为共阳极和共阴极两种类型。共阳极数码管的所有LED的阳极连接在一起,通过控制每个LED的阴极点亮或熄灭来显示不同的数字或字母。共阴极数码管则相反,将所有LED的阴极连接在一起,通过控制每个LED的阳极点亮或熄灭来显示不同的数字或字母。在实际应用中,常用的是共阳极数码管。 数码管的控制是通过给定不同的输入信号来实现的。
719 0
|
弹性计算 安全 网络安全
转发路由器 Transit Router(TR):实现企业级互联网络的灵活与可靠
转发路由器 Transit Router(简称“TR”)是地域范围内企业级核心转发网元,可为用户转发同地域或不同地域的网络实例间的流量,并支持在地域内定义灵活的互通、隔离、引流策略,帮助用户打造一张灵活、可靠、大规模的企业级互联网络。通过搭配云数据传输(简称“CDT”),用户可实现跨地域连接场景数据传输按流量计费的能力。
|
存储 运维 Cloud Native
数据库的未来发展趋势
【8月更文挑战第27天】数据库的未来发展趋势
801 4
|
开发者 图形学 UED
深度解析Unity游戏开发中的性能瓶颈与优化方案:从资源管理到代码执行,全方位提升你的游戏流畅度,让玩家体验飞跃性的顺滑——不止是技巧,更是艺术的追求
【8月更文挑战第31天】《Unity性能优化实战:让你的游戏流畅如飞》详细介绍了Unity游戏性能优化的关键技巧,涵盖资源管理、代码优化、场景管理和内存管理等方面。通过具体示例,如纹理打包、异步加载、协程使用及LOD技术,帮助开发者打造高效流畅的游戏体验。文中提供了实用代码片段,助力减少内存消耗、提升渲染效率,确保游戏运行丝滑顺畅。性能优化是一个持续过程,需不断测试调整以达最佳效果。
725 0
|
自然语言处理 算法 编译器
编译原理复习四:编译器结构 消除左递归、左公因子 最右推导 寻找句柄讲解(附题目和答案)
编译原理复习四:编译器结构 消除左递归、左公因子 最右推导 寻找句柄讲解(附题目和答案)
395 0
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp微信小程序的社区养老服务的详细设计和实现
基于SpringBoot+Vue+uniapp微信小程序的社区养老服务的详细设计和实现
255 1
设置虚拟内存
设置虚拟内存
370 1
|
存储 数据库 UED
秒杀系统数据库设计核心要点详解
秒杀系统数据库设计核心要点详解
532 1
|
Python
【python基础知识】10.用Python实现石头剪刀布小游戏-函数实操篇
【python基础知识】10.用Python实现石头剪刀布小游戏-函数实操篇
4091 0
【python基础知识】10.用Python实现石头剪刀布小游戏-函数实操篇