【发布时间】:2017-03-23 14:38:45
【问题描述】:
我有两个列表,我想在第二个列表开始具有比第一个列表更高的值时找到索引。 例如:
列表 A:[6、9、15、17、18、20]
列表 B:[5、8、14、16、19、22]
列表 B 的值高于列表 A 中相同索引的值的索引是 4。
我尝试使用zip,然后findFirst,但我不知道如何获取索引而不是元素。
Streams.zip(listA, listB, Pair::of)
.findFirst(pair-> pair.getFirst() < pair.getSecond());
有没有使用 Java 8 的好方法?
【问题讨论】:
-
用 surpass 你的意思是它总是更高?
-
如果不存在这样的索引应该返回什么?
-
如果您认为循环遍历两者并比较相对定位的值很好,那么是的
-
此外,在 StackOverflow 中,我们希望发布者能够解释他搜索和完成的内容。通常不接受“请帮我做”类型的问题。
-
嗯所以定义可能不准确。我的意思是第一次发现列表 B 的值高于列表 A。
标签: java java-8 java-stream