小结与扩展 池的最大的大小如何去设置! 了解:IO密集型,CPU密集型:(调优)  //1.CPU密集型 几核就是几个线程 可以保持效率最高 //2.IO密集型判断你的程序中十分耗IO的线程,只要大于这个线程数就行 一般设置为这个耗IO线程数的两倍  package com.kuang.pool; ​ import java.util.concurrent.*; ​ // Executors工具类 三大方法 ​ //使用了线程池之后,使用线程池来创建线程 public class Demo01…
10.1.函数式接口 10.1.1.概述 有且仅有一个抽象方法的接口,并且可以通过在类上标注@FunctionalInterface注解进行检测,建议自定义的函数式接口都加上这个注解 10.1.2.函数式接口作为方法的参数 public class Main { public static void main(String[] args) { // 匿名内部类的方式 startThread(new Runnable() { @Override public void run() { System…
在我们看他人code的时候经常会看到,可能会经常看到lambda表达式,函数式接口,以及流式计算.在刚接触这些新功能时,也觉得真的有必要吗?但是现在写多了,发现这个功能确实能简化代码结构,提升编码效率.lambda表达式,函数式接口,流式计算单个来用确实非常难用,但是整合到一起,就会发生非常奇妙的反应. lambda表达式 lambda表达式允许把函数作为一个方法的参数.即,函数作为参数传递进方法. lambda语法 (parameters) -> expression OR (paramete…
文章目录 1.四大函数式接口(必须掌握) 1.1 function 1.2 Predicate 1.3 Consumer 1.4 Supplier 1.四大函数式接口(必须掌握) 1.lambda表达式 2.函数式接口 3.链式编程 4.stream流式计算 函数式接口:只有一个方法的接口 @FunctionalInterface public interface Runnable { public abstract void run(); } 超级多的FunctionalInterface 简…
Storm是一个分布式的.高容错的实时计算系统.Storm适用的场景: 1.Storm可以用来用来处理源源不断的消息,并将处理之后的结果保存到持久化介质中. 2.由于Storm的处理组件都是分布式的,而且处理延迟都极低,所以可以Storm可以做为一个通用的分布式RPC框架来使用. 那么下面就对大数据学习思路里的strom流式计算进行简单分解,了解一下在学习大数据中应该了解哪些流式计算的知识. 1.redis缓存系统大纲 学习内容:Redis的特点.安装如何使用命令客户端,redis的字符串类型.…
Supplier接口: 继续学习一个新的函数式接口--Supplier,它的中文意思为供应商.提供者,下面看一下它的javadoc: 而具体的方法也是相当的简单,就是不接受任何参数,返回一个结果: 对它有了大概的了解之后,下面用代码来使用一下它: 貌似这函数的使用相当简单呀,但是简单并非是它的用处少,那它到底可以应用在现实中的什么场合之下呢?工厂就是其一,因为工厂有时里面是不接收参数的,直接从工厂里面返回一个结果,当然如果工厂里面要接收参数且返回结果那Function函数式接口就可以派上用场了,…
java8中规范的四大函数式接口: 1.Consumer<T>   :消费型接口    void accept(T t); 2.Supplier<T>      :供给型接口    T get(); 3.Function<T,R>   :函数型接口    R apply(T t); 4.Predicate<T>    :断言型接口    boolean test(T t); 事例一: /** * 消费形接口,有参数,无返回值 */ public class…
JDK 1.8的一些新特性 四大核心函数式接口(Consumer.Predicate.Supplier.Function),结合lambda表达式 import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.function.Function; import java.util.function.Predicate; import java.util.function.S…
一.Consumer:消费型接口(void accept(T t)) 举一个例子 public class LambdaTest { @Test public void test() { happyTime(500, new Consumer<Double>() { @Override public void accept(Double aDouble) { System.out.println("快乐的时光总是短暂!"); } }); } public void happ…
从源代码深入Stream / 学习的时候,官方文档是最重要的. 及其重要的内容我们不仅要知道stream用,要知道为什么这么用,还要知道底层是怎么去实现的. --个人注释:从此看出,虽然新的jdk版本对开发人员提供了很大的遍历,但是从底层角度来说,实现确实是非常复杂的. --对外提供很简单的接口使用. (一定是框架给封装到底层了,所以你才用着简单.) 遇到问题,能够从底层深入解决问题. 学习一门技术的时候,先学会用,然后去挖掘深层次的内容(底层代码和运作方式). 引入:Example. publ…