Java8-Stream-No.01

简介: import java.util.ArrayList;import java.util.List;import java.util.Optional;public class Streams1 { public static void main(String[...

import java.util.ArrayList;
import java.util.List;
import java.util.Optional;

public class Streams1 {

    public static void main(String[] args) {

        List<String> stringCollection = new ArrayList<>();
        stringCollection.add("ddd2");
        stringCollection.add("aaa2");
        stringCollection.add("bbb1");
        stringCollection.add("aaa1");
        stringCollection.add("bbb3");
        stringCollection.add("ccc");
        stringCollection.add("bbb2");
        stringCollection.add("ddd1");


        // filtering

        stringCollection.stream().filter((s) -> s.startsWith("a")).forEach(System.out::println);

        // "aaa2", "aaa1"


        // sorting

        stringCollection
                .stream()
                .sorted()
                .filter((s) -> s.startsWith("a"))
                .forEach(System.out::println);

        // "aaa1", "aaa2"


        // mapping

        stringCollection
                .stream()
                .map(String::toUpperCase)
                .sorted((a, b) -> b.compareTo(a))
                .forEach(System.out::println);

        // "DDD2", "DDD1", "CCC", "BBB3", "BBB2", "AAA2", "AAA1"


        // matching

        boolean anyStartsWithA = stringCollection
                .stream()
                .anyMatch((s) -> s.startsWith("a"));

        System.out.println(anyStartsWithA);      // true

        boolean allStartsWithA = stringCollection
                .stream()
                .allMatch((s) -> s.startsWith("a"));

        System.out.println(allStartsWithA);      // false

        boolean noneStartsWithZ = stringCollection
                .stream()
                .noneMatch((s) -> s.startsWith("z"));

        System.out.println(noneStartsWithZ);      // true


        // counting

        long startsWithB = stringCollection
                .stream()
                .filter((s) -> s.startsWith("b"))
                .count();

        System.out.println(startsWithB);    // 3


        // reducing

        Optional<String> reduced =
                stringCollection
                        .stream()
                        .sorted()
                        .reduce((s1, s2) -> s1 + "#" + s2);

        reduced.ifPresent(System.out::println);
        // "aaa1#aaa2#bbb1#bbb2#bbb3#ccc#ddd1#ddd2"


    }

}
目录
相关文章
|
4天前
|
存储 Java API
Java8实战-使用Stream
Java8实战-使用Stream
7 0
Java8实战-使用Stream
|
Java
Java 8 - Stream实战
Java 8 - Stream实战
94 0
|
SQL NoSQL Oracle
Java8的双绝学之一stream能用来做什么?
Java8的双绝学之一stream能用来做什么?
Java8的双绝学之一stream能用来做什么?
|
Java 测试技术
Java基础之Stream
  流表示一系列元素并支持不同类型的操作来对这些元素执行计算。在Java 8中,Collection接口有两种方法来生成Stream   stream()parallelStream()   流操作包括中间或终端,中间操作返回一个流,所以我们可以链接多个中间操作而不使用分号。 终端操作是void的或返回非流结果。   Stream是可以执行顺序和并行聚合操作的一系列元素 。 任何给定的“Stream”都可能有无限量的数据流过它。 你所得到的结果是从“Stream”接收的数据在到达时被单独处理,而不是完全对数据执行批处理。 当与lambda表达式 结合时,它们提供了使用函数方法对数据序列执
110 0
|
Java
Java 8 Stream--开发手册
什么是Java8 Stream,为什么需要Stream? Stream是Java8一大亮点,它与 java.io 包里的 InputStream 和 OutputStream 是完全不同的概念。
1394 0
|
数据库管理
Java8-Stream-No.12
import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.
798 0
Java8-Stream-No.13
import java.security.SecureRandom; import java.util.Arrays; import java.util.stream.IntStream; public class Streams13 { public static...
745 0
|
Python
Java8-Stream-No.11
import java.util.Arrays; import java.util.List; public class Streams11 { static class Person { String name; int age; ...
849 0
Java8-Stream-No.02
import java.util.ArrayList; import java.util.List; public class Streams2 { public static void main(String[] args) { List str...
693 0
Java8-Stream-No.04
import java.util.OptionalInt; import java.util.stream.IntStream; public class Streams4 { public static void main(String[] args) { ...
728 0

热门文章

最新文章