相关疑难解决方法(0)

在Java中,流循环有什么优势?

我在接受采访时被问到这个问题,我不相信我能给出最好的答案.我提到你可以进行并行搜索,并且通过某些我无法记住的方法处理空值.现在我意识到我在想Optionals.我在这里错过了什么?他们声称它的代码更好或更简洁,但我不确定我是否同意.


考虑到它的回答是多么简洁,看起来这毕竟不是一个问题.


如果他们在面试中提出这个问题,而且显然是这样,除了让更难找到答案之外,还有什么目的可以打破它?我的意思是,你在找什么?我可以打破这个问题并解决所有子问题但是然后创建一个包含所有子项的链接的父问题......虽然看起来很傻.虽然我们在这,但请举一个不太广泛的问题的例子.我知道没有办法只问这个问题的一部分,仍然得到一个有意义的答案.我可以用不同的方式问同一个问题.例如,我可以问"流服务的目的是什么?" 或"我什么时候使用流而不是for循环?" 或"为什么要打扰流而不是循环?" 这些都是完全相同的问题.

......还是被认为过于宽泛,因为有人给出了一个非常长的多点答案?坦率地说,知情人士几乎可以解决任何问题.例如,如果您恰好是JVM的作者之一,那么当我们大多数人不能这样做时,您可能会整天谈论for循环.

"请编辑问题,将其限制在具有足够详细信息的特定问题上,以确定适当的答案.避免同时询问多个不同的问题.请参阅"如何询问"页面以获取有关此问题的帮助.

如下所述,已经给出了足够的答案,证明存在一个并且很容易提供.

java loops java-8 java-stream

110
推荐指数
5
解决办法
5万
查看次数

Iterator与Java的流8

为了利用java.util.streamJdk 8中包含的各种查询方法,我尝试设计域模型,其中具有*多重性(具有零个或多个实例)的关系的getter 返回a Stream<T>而不是Iterable<T>or Iterator<T>.

我怀疑的是,与此Stream<T>相比,Iterator<T>是否会产生任何额外的开销?

那么,使用Stream<T>?来破坏我的域模型是否有任何不利之处?

或者,我应该总是返回一个Iterator<T>或者Iterable<T>,并通过将该迭代器转换为StreamUtils?来让最终用户决定是否使用流.

请注意,返回a Collection不是有效选项,因为在这种情况下,大多数关系都是惰性且大小未知.

java domain-driven-design domain-model java-8 java-stream

45
推荐指数
2
解决办法
2万
查看次数