美文网首页
stream系列——初识stream

stream系列——初识stream

作者: hello高world | 来源:发表于2017-01-05 09:44 被阅读0次

初识stream

1、对于迭代来说,包含内部迭代和外部迭代。

外部迭代 内部迭代

外部迭代:(程序逻辑自己控制迭代过程)

int count = 0;
Iterator<Artist> iterator = allArtists.iterator();
while(iterator.hasNext()) {
Artist artist = iterator.next();
if (artist.isFrom("London")) {
count++;
}
}

内部迭代:(相当于函数回调,将方法传入给java库类内部,由库内部来回调你的接口函数)

package org.java8.stream;

import java.util.ArrayList;
import java.util.Collection;

public class StreamTest {

    public static void main(String[] args) {
        Collection<Artist> allArtists = new ArrayList<>();
        Artist test = new Artist();
        test.setFrom("London");
        allArtists.add(test);
        //遍历放在内部,将方法传入到内部作为函数进行调用
        long count = allArtists.stream()
                .filter(artist -> artist.isFrom("London"))
                .count();
        System.out.println(count);
        
        allArtists.stream()
                .filter(artist ->{
                     System.out.println("no print");//打印不出来,因为并没有具体的进行计算,判断计算方法是看返回的还是不是stream类型
                    return artist.isFrom("London"); 
                });
    }
    
    static class Artist {
        String name;
        String from;
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public boolean isFrom(String from) {
            return this.from.equalsIgnoreCase(from);
        }
        public String getFrom() {
            return from;
        }
        public void setFrom(String from) {
            this.from = from;
        }
    }
}

相关文章

  • stream系列——初识stream

    初识stream 1、对于迭代来说,包含内部迭代和外部迭代。 外部迭代:(程序逻辑自己控制迭代过程) 内部迭代:(...

  • reactive stream 响应式流

    1 初识Reactive Stream 反应式流 2015 年反应式流 (Reactive Stream) 规范诞...

  • Kafka核心API——Stream API

    Kafka Stream概念及初识高层架构图 Kafka Stream是Apache Kafka从0.10版本引入...

  • JAVA8新特性: Stream-集合流操作

    Stream类全路径为:java.util.stream.Stream Stream简介 Stream原理 Str...

  • Stream流

    一、创建流 Arrays.stream Stream.of Collection.stream Stream.it...

  • Nodejs Stream 初识

    linux文件 为了区别不同文件类型,会有一个type来进行区别普通文件:包含任意数据目录: 相关一组文件的索引套...

  • stream系列——初始stream方法

    map原理 filter原理 flatMap原理 reduce操作累加

  • Java8 Stream 入门看这篇就够了

    初识 Stream Java 8 API添加了一个新的抽象称为流 Stream,可以让你以一种声明的方式处理数据。...

  • Stream API

    Stream 声明:java8新特性系列为个人学习笔记,参考地址点击这里,侵删!! Stream API Java...

  • Java基础系列-Stream

    原创文章,转载请标注出处:《Java基础系列-Stream》 一、概述 Stream操作简称流操作,这里的流与IO...

网友评论

      本文标题:stream系列——初识stream

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