|
<h1>
Java中LongStream filter()方法的示例
</h1>
<p>
<strong>
LongStream filter(LongPredicate predicate)
</strong>
返回一个流,其中包含与给定谓词相匹配的此流的元素。这是一个 <strong>中间操作</strong>。这些操作始终是懒惰的,即执行诸如filter()这样的中间操作实际上并未执行任何过滤,而是创建一个新流,该流在遍历时包含与给定谓词匹配的初始流元素。
</p>
<p>
<strong>
语法:
</strong>
</p>
<pre translate="no">
<strong>LongStream filter(LongPredicate predicate)</strong>
其中,LongStream是基元 long值元素的序列。
LongPredicate表示一个具有一个长型参数的谓词(布尔值函数),并且该函数返回新流。
</pre>
<p>
<strong>
示例 1 :
</strong>
在LongStream上使用filter()方法。
</p>
<table border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<pre translate="no">// LongStream filter的Java代码(LongPredicate predicate),以获得一个流
// 该流由与给定谓词匹配的此流的元素组成。
import java.util.*;
import java.util.stream.LongStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// 创建LongStream
LongStream stream = LongStream.of(3L, 5L, 6L, 8L, 9L);
// 使用LongStream filter(LongPredicate predicate)
// 获得由模3余2给出的元素组成的流
stream.filter(num -> num % 3 == 2)
.forEach(System.out::println);
}
}</pre>
</tr>
</tbody>
</table>
<p>
输出:
</p>
<pre translate="no">
5
8
</pre>
<p>
<strong>
示例 2 :
</strong>
在LongStream上使用filter()方法。
</p>
<table border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<pre translate="no">// LongStream filter的Java代码(LongPredicate predicate),以获得一个流
// 该流由与给定谓词匹配的此流的元素组成。
import java.util.*;
import java.util.stream.LongStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// 创建LongStream
LongStream stream = LongStream.of(-2L, -1L, 0L, 1L, 2L);
// 使用LongStream filter(LongPredicate predicate)
// 结果返回所有大于0的数字
stream.filter(num -> num > 0)
.forEach(System.out::println);
}
}</pre>
</tr>
</tbody>
</table>
<p>
输出:
</p>
<pre translate="no">
1
2
</pre>
<br/>
|
|