本文主要是介绍Java 8 Streams API,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
package com.lambda;import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;/*** <b>* Streams API是Java 8的一大新特点, 流式风格,使用Streams API比起循环和if语句组合起来更加直观,代码简洁* </b>* @author shixiang.chen* @since 2018*/
public class StreamsApiTest {public static void main(String[] args) {List<String> list = new ArrayList<String>();list.add("aaa");list.add("mr.Chen");list.add("mr.Chen");list.add("mr.Chen");list.add("ftValue");list.add("peekValue");list.add("mr.Li");//List<String> result = list.stream().distinct() // // 去重复,三个重复的mr.Chen会只剩唯一的一个 .filter(e-> e.equals("ftValue")) // 筛选出符合条件的.collect(Collectors.toList()); // 返回计算结束后的集合result.forEach(e-> System.out.println(e) );result.forEach(System.out::println);// allMatch 判断集合中对象是否全部匹配某条件 boolean allMatch = list.stream().allMatch(e-> e.equals("mr.Li"));//判断集合中对象是否匹配某条件,只要任意一个对象满足就返回trueboolean anyMatch = list.stream().anyMatch(e-> e.equals("mr.Chen"));// 与allMatch作用相反, 判断集合中对象没有一个匹配某条件boolean noneMatch = list.stream().noneMatch(e-> e.equals("value"));System.out.println("allMatch:" + allMatch);System.out.println("anyMatch:" + anyMatch);System.out.println("noneMatch:" + noneMatch);}
}
这篇关于Java 8 Streams API的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!