"""生成器:边执行边运算 惰性运算:节省空间""" """python 2 会先生成这些数据 range()""" for i in range(1000): print(i) if i>100: break """while循环也是在运算过程中生成下一个值""" count=0 while co ...
分类:
其他好文 时间:
2020-06-21 00:37:13
阅读次数:
247
"""可迭代:可循环--一个实现了next方法的对象则是迭代器 一类是集合数据类型,如list/tuple/dict/set/str 一类是generator,包括生成器和带yield的generator function""" from collections import Iterable is ...
分类:
其他好文 时间:
2020-06-21 00:00:06
阅读次数:
64
迭代器 list1=[1,2] it = iter(list1) print(next(it)) # 1 print(next(it)) # 2 print(next(it)) #StopIteration异常 生成器 def frange(start, end, step): x = start ...
分类:
编程语言 时间:
2020-06-20 21:52:49
阅读次数:
55
1、STL概述 为了建立数据结构和算法的一套标准,并且降低他们之间的耦合关系,以提升各自的独立性、弹性、交互操作性(相互合作性,interoperability),诞生了STL。 STL提供了六大组件,彼此之间可以组合套用,这六大组件分别是:容器、算法、迭代器、仿函数、适配器(配接器)、空间配置器。 ...
分类:
其他好文 时间:
2020-06-20 17:06:14
阅读次数:
63
1、迭代器是用于方便集合遍历的,实现了Iterable接口的集合都可以使用迭代器来遍历。使用迭代器遍历元素时,除了查看之外,只能做remove操作。 2、增强for循环,内部使用的是迭代器,所以它的操作对象是数组和可以使用迭代器的集合。遍历时只能查看,无法修改、删除、增加。 所以如果需要对遍历的对象 ...
分类:
其他好文 时间:
2020-06-20 13:32:31
阅读次数:
73
##迭代器模式: 迭代器模式(Iterator),提供一种方法顺序访问每一个聚合对象中的各个元素,而又不暴露该对象的内部表示。 何时使用: 当需要访问一个聚集对象,而且不管这些对象是什么都需要遍历的时候,就可以考虑使用迭代器模式。 需要对聚集有多种遍历方式时,可以考虑使用迭代器模式。 使用场景: 访 ...
分类:
其他好文 时间:
2020-06-19 23:07:48
阅读次数:
45
Reactor Reactor 项目的主要 artifact 是 reactor-core,这是一个基于 Java 8 的实现了响应式流规范的响应式库。 Reactor 提供了实现 Publisher 的响应式类 Flux 和 Mono,以及丰富的操作符。一个 Flux 代表 0...N 个元素的响 ...
分类:
其他好文 时间:
2020-06-19 22:40:36
阅读次数:
69
使用生成器方式实现斐波那契数列 1 生成器 语法 # 请注意下面的代码创建的不是一个列表而是一个生成器对象 # 通过生成器可以获取到数据但它不占用额外的空间存储数据 # 每次需要数据的时候就通过内部的运算得到数据(需要花费额外的时间) f = (x ** 2 for x in range(1, 10 ...
分类:
编程语言 时间:
2020-06-19 12:04:34
阅读次数:
54
1.11-迭代器模式与命令模式详解 1.11.1.迭代器模式详解 时长:42min 11.1.1.迭代器模式的定义 定义: 迭代器模式【Iterator Pattern】,又叫游标模式【Cursor Pattern】,它提供一种顺序访问集合/容器 对象元素的方法,又无须暴露集合内部表示。 本质: 抽 ...
分类:
其他好文 时间:
2020-06-19 11:59:06
阅读次数:
40
集合类分为两个分支,Collection与Map,其中Collection接口继承了Iterator接口,继承Iterator接口的类可以使用迭代器遍历元素(即Collection接口的类都可以使用),今天我们从相同点、不同点、以及JDK源码等各个方面来深入解析下,底层使用数组实现的两个集合类:Ar ...
分类:
编程语言 时间:
2020-06-17 23:13:00
阅读次数:
60