0
点赞
收藏
分享

微信扫一扫

stream(流) 查找方法

stream(流) 查找方法

Stream API提供了allMatch、anyMatch、noneMatch、findFirst和findAny方法

import java.util.ArrayList;

import java.util.Arrays;

import java.util.List;

import java.util.Optional;

import java.util.stream.Collectors;

import java.util.stream.Stream;

public class StreamMain {

public static void main(String[] args) {

List userList = new ArrayList();

userList.add(new User("张1", 12, "男"));

userList.add(new User("张2", 20, "女"));

userList.add(new User("张3", 18, "男"));

userList.add(new User("张4", 24, "女"));

userList.add(new User("张5", 16, "男"));

userList.add(new User("张1", 12, "男"));

// 查找userlist中有没有年龄==18的 有就是true boolean anyMatch = userList.stream().anyMatch(x -> x.getAge() == 18); System.out.println(anyMatch); // 查找userlist中有没有年龄==77的 有就是false boolean noonMatch = userList.stream().noneMatch(x -> x.getAge() == 77); System.out.println(noonMatch); // 查找userlist中全部有没有年龄==99的 有就是true boolean b = userList.stream().allMatch(x -> x.getAge() != 99); System.out.println(b); // 查找userlist找到任意一个就返回 Optional<User> any = userList.stream().findAny(); System.out.println(any); // 查找userlist找到第一个就返回 Optional<User> first = userList.stream().findFirst(); System.out.println(first.toString()); }

}

allMatch :流中的元素相等

anyMatch:流中的元素是否都能匹配给定的谓词

noneMatch: 确保流中没有任何元素与给定的谓词相等,与allMatch相反

findAny:返回当前流中的任意元素;

findFirst:返回第一个元素

 

举报

相关推荐

0 条评论