生成器generator 生成器指的是生成器对象,可由生成器表达式得到,也可以使用yield关键字得到一个生成器函数,调用这个函数得到一个生成器对象; 生成器函数 函数体中包含yield语句的函数,返回生成器对象; 生成器对象,是一个可迭代对象,是一个迭代器; 生成器对象,是延迟计算,惰性求值的; ...
分类:
编程语言 时间:
2020-07-16 10:16:07
阅读次数:
72
一、迭代器 1、什么是迭代?迭代是一个重复的过程,并且每次重复都是基于上一次的结果而来 2、要想了解迭代器到底是什么?必须先了解一个概念,即什么是可迭代的对象?可迭代的对象:在python中,但凡内置有__iter__方法的对象,都是可迭代的对象字符串,列表,元组,集合,字典都是可迭代的 #以下都是 ...
分类:
其他好文 时间:
2020-07-16 00:14:05
阅读次数:
62
一、增强for循环 增强for循环是JDK1.5以后出来的一个高级for循环,专门用来遍历数组和集合的。 它的内部原理其实是个Iterator迭代器,所以在遍历的过程中,不能对集合中的元素进行增删操作。 //格式: for(元素的数据类型 变量 : Collection集合or数组){ } for ...
分类:
编程语言 时间:
2020-07-14 18:52:58
阅读次数:
88
1 增强for循环 增强for循环是JDK1.5以后出来的一个高级for循环,专门用来遍历数组和集合的。它的内部原理其实是个Iterator迭代器,所以在遍历的过程中,不能对集合中的元素进行增删操作。 格式: for(元素的数据类型 变量 : Collection集合or数组){ } 注意:新for ...
分类:
编程语言 时间:
2020-07-14 18:50:26
阅读次数:
85
增强for循环 增强for循环是JDK1.5以后出来的一个高级for循环,专门用来遍历数组和集合的。 它的内部原理其实是个Iterator迭代器,所以在遍历的过程中,不能对集合中的元素进行增删操作。 //格式: for(元素的数据类型 变量 : Collection集合or数组){ } for (i ...
分类:
编程语言 时间:
2020-07-14 18:28:23
阅读次数:
62
throw有两方面的作用,首先是抛给生成器一个异常,然后如果生成器能处理掉异常的话,throw方法接着迭代一次取得返回值,比如上面这个案例就抛给了生成器一个Exception异常,然后生成器处理掉了。注意,捕获异常是在上一次迭代中断的位置捕获,因为每次生成器运行的时候,都是从上一次发生yield中断 ...
分类:
其他好文 时间:
2020-07-14 16:32:23
阅读次数:
61
问题: 小汪作为一个有数学天分的程序猿,设计了一套密码生成器来搞定自己的密码问题。 密码生成器由N个槽位组成,槽位的下标为0~N-1,每个槽位存储一个数。起初每个槽位都是0。 密码生成器会进行M轮计算,每轮计算,小汪会输入两个数L,R(L<=R),密码生成器会将这两个数作为下标,将两个下标之间(包含 ...
分类:
其他好文 时间:
2020-07-13 21:53:20
阅读次数:
264
集合类 他们都在 java.util包里 Iterator(迭代器) Collection List (有序可重复) ArrayList(常用) add remove contains size LinkedList(常用) getFirst() getLast() removeFirst() ad ...
分类:
编程语言 时间:
2020-07-13 21:43:45
阅读次数:
78
[Eslint 中文开发手册require-yield (Rules) - Eslint 中文开发手册"extends": "eslint:recommended"配置文件中的属性启用此规则。规则细节此规则会为没有yield关键字的生成器函数生成警告。示例此规则的错误代码示例:/*eslint re... ...
分类:
其他好文 时间:
2020-07-13 21:16:11
阅读次数:
64
1.迭代器:任何实现了 __next__ 方法的对象都可以称为迭代器。能够进行迭代(循环遍历)操作的对象。 举例:list,字典,元组,生成器等 能够作用与for循环的迭代对象 2.生成器:能够通过规则或规律推导出下一个值得对象。生成器属于迭代器。 举例:1.生成器函数对象(带有关键字yield的函 ...
分类:
编程语言 时间:
2020-07-13 15:36:33
阅读次数:
78