Java8 使用filter对集合过滤的时候怎么取到当前的索引即index

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java8 使用filter对集合过滤的时候怎么取到当前的索引即index相关的知识,希望对你有一定的参考价值。

参考技术A 用Java8的Stream你就应该用函数式的编程思想来思考问题解决方式了...既然选择了内部循环,就不需要关心索引了问题了...说明在处理这个问题的时候还是没有完全达到声明式的封装...还在教程序怎么做...你应该告诉程序你需要什么即可...而不是教它怎么做本回答被提问者采纳

Java8 使用filter对集合过滤的时候怎么取到当前的索引即index

参考技术A 以下是indexOf的源代码,可以看出, 是从0往后找,找到就返回
/**
* Returns the index of the first occurrence of the specified element
* in this list, or -1 if this list does not contain the element.
* More formally, returns the lowest index <tt>i</tt> such that
* <tt>(o==null ? get(i)==null : o.equals(get(i)))</tt>,
* or -1 if there is no such index.
*/
public int indexOf(Object o)
if (o == null)
for (int i = 0; i < size; i++)
if (elementData[i]==null)
return i;
else
for (int i = 0; i < size; i++)
if (o.equals(elementData[i]))
return i;

return -1;
本回答被提问者采纳

以上是关于Java8 使用filter对集合过滤的时候怎么取到当前的索引即index的主要内容,如果未能解决你的问题,请参考以下文章

Java8使用stream().filter()过滤List对象(查找符合条件的对象集合)

java8 stream.filter 过滤集合中的数据

Java8,Stream之filter简单介绍

Java8 新特性 Stream 无状态中间操作

Java集合中filter的使用,保留集合中符合条件的元素

java 8 List Filter