import java.util.function.Consumer;
import java.util.function.IntConsumer; public class ConsumerTest { public void test(Consumer<Integer> consumer) {
consumer.accept(100);
} public static void main(String[] args) {
ConsumerTest consumerTest = new ConsumerTest(); Consumer<Integer> consumer = i -> System.out.println(i);
IntConsumer intConsumer = i -> System.out.println(i); System.out.println(consumer instanceof Consumer);
System.out.println(intConsumer instanceof IntConsumer); consumerTest.test(consumer); // 面向对象方式
consumerTest.test(consumer::accept); // 函数式方式
consumerTest.test(intConsumer::accept); // 函数式方式
// consumerTest.test(intConsumer);
}
}
public class LambdaTest {

    Runnable r1 = () -> System.out.println(this);

    Runnable r2 = new Runnable() {
@Override
public void run() {
System.out.println(this);
}
}; public static void main(String[] args) {
LambdaTest lambdaTest = new LambdaTest(); Thread t1 = new Thread(lambdaTest.r1);
t1.start(); Thread t2 = new Thread(lambdaTest.r2);
t2.start(); }
}
import java.util.Arrays;
import java.util.List;
import java.util.stream.Stream; public class StreamTest { public static void main(String[] args) {
List<String> list = Arrays.asList("hello", "world", "hello world"); // 讲解Stream<T>与BaseStream<T, S extends BaseStream<T, S>>之间的继承关系
// NullPointerException nullPointerException = new NullPointerException("my exception");
// 如果不执行流的close方法,那么onClose的回调是不会执行的 try (Stream<String> stream = list.stream()) {
stream.onClose(() -> {
System.out.println("aaaa");
// throw new NullPointerException("first exception");
}).onClose(() -> {
System.out.println("bbbb");
// throw new ArithmeticException("second exception");
}).forEach(System.out::println);
}
}
}
import java.util.Arrays;
import java.util.List;
import java.util.stream.Stream; public class StreamTest2 { public static void main(String[] args) {
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5);
System.out.println(list.getClass()); // list.stream().map(i -> 2 * i).forEach(System.out::println); Stream<Integer> stream = list.stream(); System.out.println(stream.getClass()); Stream stream2 = stream.map(i -> 2 * i); System.out.println(stream2.getClass()); System.out.println("--------"); stream2.forEach(System.out::println); // list.stream().parallel().forEach(System.out::println); }
}

stream3的更多相关文章

  1. Matlab绘图函数一览

    要查看Matlab所有绘图函数,请从Matlab主界面菜单查看“绘图目录”,或从Matlab帮助文档查看“Types of MATLAB Plots”(在线版本).本文的图和英文解释摘自Matlab帮 ...

  2. 压缩文本、字节或者文件的压缩辅助类-GZipHelper

    下面为大家介绍一.NET下辅助公共类GZipHelper,该工具类主要作用是对文本.字符.文件等进行压缩与解压.该类主要使用命名空间:System.IO.Compression下的GZipStream ...

  3. storm trident 示例

    Storm Trident的核心数据模型是一批一批被处理的“流”,“流”在集群的分区在集群的节点上,对“流”的操作也是并行的在每个分区上进行. Trident有五种对“流”的操作: 1.      不 ...

  4. 压缩文本、字节或者文件的压缩辅助类-GZipHelper 欢迎收藏

    压缩文本.字节或者文件的压缩辅助类-GZipHelper 欢迎收藏 下面为大家介绍一.NET下辅助公共类GZipHelper,该工具类主要作用是对文本.字符.文件等进行压缩与解压.该类主要使用命名空间 ...

  5. WCF初探-24:WCF序列化和反序列化

    前言 WCF包含很多封装的内部机制,这些是我们在编写程序时不会经常看到的.比如上一篇讲解的Message.这一篇我将讲解WCF的另一种内部机制,WCF的序列化和反序列化.通常我们在编写WCF服务程序的 ...

  6. C#、.NET网络请求总结(WebClient和WebRequest)

    1.关于WebClient第三方的封装,支持多文件上传等 using System; using System.Collections.Generic; using System.Text; usin ...

  7. QQ音乐无损歌曲接口api

    1.打开QQ音乐官网 y.qq.com 2.选择你要的歌曲,进入后查看网址,以虎口脱险这个歌曲为例:http://y.qq.com/#type=song&mid=000Ib8E71sUNi7 ...

  8. Windows phone 8 学习笔记(3) 通信(转)

    Windows phone 8 可利用的数据通信方式比较广泛,在硬件支持的前提下,我们可以利用WiFi.蓝牙.临近感应等多种方式.数据交互一般通过套接字来完成,我们将在本文详细的分析. 快速导航:一. ...

  9. Java 8怎么了之二:函数和原语

    [编者按]本文作者为专注于自然语言处理多年的 Pierre-Yves Saumont,Pierre-Yves 著有30多本主讲 Java 软件开发的书籍,自2008开始供职于 Alcatel-Luce ...

随机推荐

  1. TP5多入口设置

    今天在用tp5做项目的时候发现,前台是可以绑定默认到index模块的,但是后台不好弄,于是查了一下手册,按照手册上说的,复制了index.php改为admin.php,作为后台的入口文件,于是域名/a ...

  2. JQuery解决事件动画重复问题

    开发项目时,经常要写动画效果,有时候会遇到动画重复问题,例如:当鼠标移动到某个元素上时,执行某个动画,当我鼠标多次移动到该元素时,该动画就要连续执行,那么怎么去解决呢? 话不多说,直接添代码,简单明了 ...

  3. QT背景

    Qt是一个跨平台的C++图形用户界面应用程序框架.它为应用程序开发者提供建立基于window界面所需的功能. Qt是诺基亚公司的一个产品.1996年,Qt进入商业领域,已成为全世界范围内数千种成功的应 ...

  4. DPF.Android.Native.Components.v2.8.1 for delphi xe6 使用DPFJAlertDialog遇到的问题

    使用DPFJAlertDialog控件时发现DPFJAlertDialog1Click不能捕获到对话框到底按了那个按键,上网搜索后找到了解决方法: 打开DPF.Android.JAlertDialog ...

  5. Sql--IDENTITY()自动增长列

    CREATE TABLE Tables( , ) ,) NOT NULL, [UpdateTime] [datetime] NOT NULL, CONSTRAINT [PK_Tables] PRIMA ...

  6. windows phone开发必备工具翔

    1.图标设计 http://www.flaticon.com/ http://www.iconfont.cn/ 2.界面设计: 2.1.behance.com    2.2.dribbble.com  ...

  7. 通过python的paramiko模块获取cisco交换机的配置

    import paramiko import time import os import threading,Queue class MyExpection(Exception): pass clas ...

  8. struts2配置文件的解释

    1 <?xml version="1.0" encoding="GB2312"?>  <!DOCTYPE struts PUBLIC &quo ...

  9. { "result": null, "log_id": 304592860300941982, "error_msg": "image check fail", "cached": 0, "error_code": 222203, "timestamp": 1556030094 }

    这个是人脸识别时无法检测到图片报的错,有时候我们检测一张图片是否在库里面,当一张图片明显在里面,还检测不到,如下面是我的代码 package Test1; import java.io.IOExcep ...

  10. c++11时间相关库(chrono)

    以下整理自:https://www.2cto.com/kf/201404/290706.html chrono 库主要包含了三种类型:时间间隔 Duration.时钟 Clocks 和时间点 Time ...