List<User> userList = new ArrayList();
User user1 = userList.stream().filter(user -> "zhangsan".equals(user.getUserName())).findAny().orElse(null);
1、filter為過濾,user代表userList中的一個User;
2、userList.stream().filter(user -> “zhangsan”.equals(user.getUserName()))表示過濾出userList中名字為zhangsan的user;
3、.findAny()表示將其中任意一個返回;【注意:在Java 8 Stream中, findFirst()返回Stream中的第一個元素,而findAny()返回Stream中的任何元素。】
4、.orElse(null)表示如果一個都沒找到返回null。【orElse()中可以塞默認值。如果找不到就會返回orElse中你自己設置的默認值。】
以上為Java8新語法的內容,推薦一本書《Java8實戰》建議學習,可有效提高代碼效率。