问题标签 [iterable]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 返回迭代器而不是集合
与数据访问层方法中的集合相比,返回迭代器是否有任何优势或在哪里更可取?
我在哪里见过,不记得为什么。
PS:可能与实时获取一些数据有关,而未完成
python - 'int' 对象不可迭代
7.3 并且想知道为什么在以下示例中字符串“racecar”被视为 int 类型。提前感谢您的帮助
python - 从 python 中成功的正则表达式匹配构建字典
我对 Python 很陌生,我正在尝试解析文件。文件中只有某些行包含感兴趣的数据,我想最终得到一个从文件中有效匹配行解析的内容的字典。
下面的代码有效,但它有点难看,我正在尝试学习它应该如何完成,也许是理解,或者使用多行正则表达式。我正在使用 Python 3.2。
你能建议一个更好的实现吗?
java - 为什么 Java 不允许在迭代器上使用 foreach(仅在可迭代对象上)?
可能重复:
为什么 Java 的 Iterator 不是 Iterable?
据我所知,foreach 循环是 Java 5 中添加的语法糖。所以
基本上会产生与
但是,如果我一开始没有可迭代对象,而只有一个迭代器(比如说,因为一个类提供了两个不同的迭代器),我就不能使用语法糖 foreach 循环。显然我仍然可以进行简单的旧样式迭代。但是,我实际上想做:
当然我可以做一个假的Iterable
:
(这实际上是对 Iterable API 的丑陋滥用,因为它只能迭代一次!)
如果它是围绕Iterator
而不是可迭代设计的,可以做一些有趣的事情:
有谁知道为什么语言是这样设计的?为了避免歧义,如果一个类同时实现Iterator
和Iterable
?为了避免假定“for(O o : iter)”将处理所有元素两次(并且忘记获取新的迭代器)的程序员错误?或者还有其他原因吗?
还是有一些我不知道的语言技巧?
java - Java 中的迭代器行为
我对 Java 中的迭代器行为有疑问。
我有这样的电话:
myIterable.iterator().hasNext()
如果此调用返回 true,我可以确定该集合至少有两个元素吗?从 Java API 规范中,我只能发现 true 意味着还有一个元素可以通过next()
. 但是如果指针在最开始会发生什么(意味着是否hasNext()
可以单独识别第一个元素)
http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Iterator.html
如果迭代有更多元素,则为 true。但是更多元素也可能意味着第一个元素?
[编辑]
我怎么知道迭代器是否有两个元素要遍历?当然,我可以迭代和计数,但在我的情况下,我不能返回或迭代两次或克隆迭代器,这是一个 Hadoop 迭代器。
java - 对“List”类型的列表进行排序>`
我有一个类型列表,List<Iterable<Object>>
在某些情况下,集合内的对象也是Comparable
.
这意味着在某些情况下,它是一个列表,其中包含许多不是 A 类型的对象Comparable
,在某些其他情况下,它包含许多 B 类型的对象Comparable
。当我有一个 B 类型的对象列表时,我希望能够对它们进行排序。
当列表中的所有对象都是Comparable
我需要对它们进行排序时,使用Collections.sort()
或类似的东西。Java 不允许我转换整个列表,也不能转换单个元素,因为它们可能没有实现Comparable
接口。有解决办法吗?
如果有用,这是我的代码:
python - 为什么 len() 不支持迭代器?
许多 Python 的内置函数(any()
,all()
等sum()
)都采用可迭代对象,但为什么不len()
呢?
人们总是可以将sum(1 for i in iterable)
其用作等价物,但为什么它首先len()
不采用可迭代对象?
java - 在 Java 中获取 Iterable 的大小
我需要弄清楚Iterable
Java中元素的数量。我知道我可以这样做:
我也可以这样做,因为我不再需要 Iterable 中的对象:
小规模基准测试没有显示出太大的性能差异,对此问题有任何评论或其他想法吗?
python - Python 3:在可迭代对象上应用运算符
sum(iterable)
有效地:
Python 是否有一个内置函数可以在不设置初始值的情况下完成此操作?
我遇到的问题sum
是它不适用于支持+
运算符的其他类型,例如Counter
.
python - Python - TypeError:需要可迭代参数
当我尝试执行以下代码时,我得到“TypeError:需要可迭代参数” :
错误位于List[i]["List_contents"] 中的 if ":" 行中:
清单内容:
作为输出我得到:
谢谢。