Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 获取与谓词匹配的元素的索引_Java_Collections_Java Stream - Fatal编程技术网

Java 获取与谓词匹配的元素的索引

Java 获取与谓词匹配的元素的索引,java,collections,java-stream,Java,Collections,Java Stream,我知道如何通过谓词查找列表的第一个元素: 有没有一种简单的方法来获取该元素的索引 编辑:链接的问题确实提供了答案,但我在搜索时找不到,因为它的措辞方式。因此,我宁愿保留这个问题。如果我理解正确,这是需要IntStream的典型情况;但这显然只适用于列表 IntStream.range(0, yourList.size()) .filter(i -> yourList.get(i)... your filter condition) .collect(Collectors.to

我知道如何通过谓词查找列表的第一个元素:

有没有一种简单的方法来获取该元素的索引


编辑:链接的问题确实提供了答案,但我在搜索时找不到,因为它的措辞方式。因此,我宁愿保留这个问题。

如果我理解正确,这是需要
IntStream
的典型情况;但这显然只适用于列表

IntStream.range(0, yourList.size())
   .filter(i -> yourList.get(i)... your filter condition)
   .collect(Collectors.toList());

如果确实只需要第一个索引,请使用
findFirst()
而不是
collect(…)
。这将只执行筛选器,直到找到第一个匹配项。