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. 20169219 NMap+Wireshark实验报告

    Tcpdump介绍 用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具. tcpdump可以将网络中 ...

  2. mxnet 线性模型

    mxnet 线性模型 li {list-style-type:decimal;}ol.wiz-list-level2 > li {list-style-type:lower-latin;}ol. ...

  3. Spring:配置文件

    首先是bean.xml,配置所有的bean,一般也叫applicationContext.xml,应用程序上下文.示例: <?xml version="1.0" encodi ...

  4. log4net工作原理(2)

    上回说道:Repository可以说成基于一个log4net配置节创建的log4net容器,它根据log4net配置节的指示创建其他所有对象(Logger/Appender/Filter/Layout ...

  5. @html.dropdown用法

    controller1 List<SelectListItem> itemList = new List<SelectListItem>() { "}, " ...

  6. whisper简介

    以太坊系列之二十 以太坊中的基础应用whisper 以太坊系列之二十 以太坊中的基础应用whisper 1 whisper介绍 2 whisper rpc模块 3 whisper中的消息 4 消息的加 ...

  7. mysql 字符串的截取与连接

    mysql 字符串的截取   left() .right() .  substring()[ mid() .substr() 等价于substring() ] .substring_index() l ...

  8. kali linux之手动漏洞挖掘三(sql注入)

    服务器端程序将用户输入作为参数作为查询条件,直接拼写sql语句,并将结果返回给客户端浏览器 如判断登录 select * from users where user='uname' and passw ...

  9. Django 使用第三方服务发送电子邮件

    在 Django 网站中使用 mailgun 的邮件收发服务. 1.在 mailgun 官网上注册个账号(免费,免费账号每个月有10000条收发邮件的服务,对我来说已经完全够用了),注册完成后界面如图 ...

  10. linux系统安全及应用——系统引导和登录控制

    一.开关机安全控制 1)调整BIOS将第一引导设备设为当前系统所在硬盘 2)调整BIOS禁止从其他设备(光盘.U盘.网络)引导系统 3)调整BIOS将安全级别设为setup,并设置管理员密码 4)禁用 ...