美文网首页
Java8随笔

Java8随笔

作者: 追梦小蜗牛 | 来源:发表于2020-09-17 18:30 被阅读0次
    image.jpg

    介绍:

    Introduced in Java 8, the Stream API is used to process collections of objects. A stream is a sequence of objects that supports various methods which can be pipelined to produce the desired result.

    • A stream is not a data structure instead it takes input from the Collections, Arrays or I/O channels.
    • Streams don’t change the original data structure, they only provide the result as per the pipelined methods.
    • Each intermediate operation is lazily executed and returns a stream as a result, hence various intermediate operations can be pipelined. Terminal operations mark the end of the stream and return the result.
    //a simple program to demonstrate the use of stream in java 
    import java.util.*; 
    import java.util.stream.*; 
    
    class Demo 
    { 
    public static void main(String args[]) 
    { 
    
        // create a list of integers 
        List<Integer> number = Arrays.asList(2,3,4,5); 
    
        // demonstration of map method 
        List<Integer> square = number.stream().map(x -> x*x). 
                            collect(Collectors.toList()); 
        System.out.println(square); 
    
        // create a list of String 
        List<String> names = 
                    Arrays.asList("Reflection","Collection","Stream"); 
    
        // demonstration of filter method 
        List<String> result = names.stream().filter(s->s.startsWith("S")). 
                            collect(Collectors.toList()); 
        System.out.println(result); 
    
        // demonstration of sorted method 
        List<String> show = 
                names.stream().sorted().collect(Collectors.toList()); 
        System.out.println(show); 
    
        // create a list of integers 
        List<Integer> numbers = Arrays.asList(2,3,4,5,2); 
    
        // collect method returns a set 
        Set<Integer> squareSet = 
            numbers.stream().map(x->x*x).collect(Collectors.toSet()); 
        System.out.println(squareSet); 
    
        // demonstration of forEach method 
        number.stream().map(x->x*x).forEach(y->System.out.println(y)); 
    
        // demonstration of reduce method 
        int even = 
        number.stream().filter(x->x%2==0).reduce(0,(ans,i)-> ans+i); 
    
        System.out.println(even); 
    } 
    } 
    
    [4, 9, 16, 25]
    [Stream]
    [Collection, Reflection, Stream]
    [16, 4, 9, 25]
    4
    9
    16
    25
    6
    
    • map: The map method is used to returns a stream consisting of the results of applying the given function to the elements of this stream
    • filter: The filter method is used to select elements as per the Predicate passed as argument.
    • sorted: The sorted method is used to sort the stream.
    • collect: The collect method is used to return the result of the intermediate operations performed on the stream.
    • forEach: The forEach method is used to iterate through every element of the stream.
    • reduce: The reduce method is used to reduce the elements of a stream to a single value.
      The reduce method takes a BinaryOperator as a parameter.

    总结:

    淡定、平和的心态,顺势而为......

    相关文章

      网友评论

          本文标题:Java8随笔

          本文链接:https://www.haomeiwen.com/subject/vbvhyktx.html