【发布时间】:2019-07-28 09:10:35
【问题描述】:
我有一系列通用项目。我想打印第一个项目的类名+所有项目的toString()。
如果我有一个 Iterable,它会是这样的:
Iterable<E> itemIter = ...;
boolean first = true;
for (E e : itemIter) {
if (first) {
first = false;
System.out.println(e.getClass().getSimpleName());
}
System.out.println(e);
}
我可以使用流 API 在流 (Stream<T>) 上执行此操作吗?
* 请注意,这是一个关于流的问题,而不是关于迭代器的问题。我有一个流——不是迭代器。
【问题讨论】:
-
请注意,这是一个关于流的问题,而不是关于迭代器的问题。我有一个流——不是迭代器。
-
@AndrewTobilko - 我没有
Iterable- 只有Stream。 -
请注意,如果你有一个流,你可以get an iterator(如果你需要,also an iterable)。
-
@IlmariKaronen,如果我将流转换为迭代器,我可能会失去并发能力。
标签: java for-loop collections java-8 java-stream