lambda表达式

Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法)

使用 Lambda 表达式可以使代码变的更加简洁紧凑。

语法格式:
(parameters) -> expression

(parameters) ->{ statements; }

常见应用:四大核心函数接口
有参无返回值 Consumer
无参有返回值 Supplier
有参有返回值 Function
断言式接口 Predicate

实例有两种形式:

形式一:

 public static void test1(){  //断言型Predicate<Integer> p = (num) -> num<10;System.out.println(p.test(100));}public static void test2(){ //消费型Consumer<String> c = x -> System.out.println(x+"吃");c.accept("小鸡");}public static void test3(){ //供给型Supplier<Integer> w = () -> (int)(Math.random()*900);System.out.println(w.get());}public static void test4(){ //函数型Function<String,Integer> f = (x) -> (int)(Math.random()*900);System.out.println(f.apply("444"));}

形式二:

 public static String upper( Function<String,String> f,String str){return f.apply(str);}public static void test4_1(){   //第二种形式upper(x->x.toUpperCase(),"hello");public static Integer random( Supplier<Integer> w){return w.get();}public static void test3_1(){int i = random(()->(int)(Math.random()*900));System.out.println(i);}}

java中lambda表达式的应用相关推荐

  1. Java中Lambda表达式和stream的使用

    Java中Lambda表达式和stream的使用 转自 [*https://www.cnblogs.com/franson-2016/p/5593080.html*] 简介 (译者注:虽然看着很先进, ...

  2. Java中Lambda表达式使用及详解

    Java中Lambda表达式使用及详解 前言 一.Lambda表达式的简介 Lambda表达式(闭包):java8的新特性,lambda运行将函数作为一个方法的参数,也就是函数作为参数传递到方法中.使 ...

  3. Java中Lambda表达式的使用

    目录 1 简介 2  Lambda表达式的组成 2.1  Lambda表达式的函数式接口 2.2 对接口的要求 3 Lambda使用 3.1 基本使用 3.2 使用Lambdas和Streams 4 ...

  4. Java中lambda表达式去重_JAVA8中Lambda和Stream

    Java8于2014年3月份发布,其主要更新的特性有:函数式接口.Lambda 表达式.集合的流式操作.注解的更新.安全性的增强.IO\NIO 的改进.完善的全球化功能等,本文将介绍Lambda表达式 ...

  5. Java中Lambda表达式的使用(转)

    https://www.cnblogs.com/franson-2016/p/5593080.html 简介 (译者注:虽然看着很先进,其实Lambda表达式的本质只是一个"语法糖" ...

  6. Java中Lambda表达式使用前提及省略规则

    Lambda标准格式 Lambda格式由3个部分组成:      参数      箭头      代码 Lambda表达式的标准格式为: (参数类型 参数名称) ‐> { 代码语句 } 格式说明 ...

  7. Java中Lambda表达式与方法引用和构造器引用

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/cjhc666/article/deta ...

  8. Java中Lambda表达式

    Lambda表达式想必大家都不陌生,jdk8的新特性,Lambda表达式需要函数式接口的支持,所谓函数式接口就是只有一个方法的接口,可以通过注解@FunctionalInterface来检查该接口是否 ...

  9. java lambda 变量_为什么Java中lambda表达式不能改变外部变量的值,也不能定义自己的同名的本地变量呢?...

    你问的问题在 Project Lambda 的概述文档上已经解释了,这都属于设计上的取舍. 不能改变外部变量的值是因为线程安全问题.当然这可能不是唯一原因,可能有其他考虑,但文档上清清楚楚说明了:Wh ...

最新文章

  1. 开发者进阶宝典,HarmonyOS 职业认证全奉上
  2. excel 2010 学习笔记一 Vlookup 函数的使用
  3. remap(地址重映射)机制
  4. Fedora配置网络DHCP
  5. 不能在此路径中使用此配置节。如果在父级别上锁定了该节,便会出现这种情况...
  6. EntityFramework中常用的数据删除方式
  7. [jQuery基础] jQuery动效案例(一) -- 弹窗广告、对联广告
  8. libjpeg-turbo在Windows VS2010下的编译
  9. spark写出分布式的训练算法_Spark0.9分布式运行MLlib的线性回归算法
  10. linux telnet 127.0.0.1 不通,Linux 出现telnet: 127.0.0.1: Connection refused错误解决办法
  11. 编程控制网卡启用停用vbs版
  12. 前端框架 — Bootstrap
  13. html效果浮窗效果,网页浮窗成效
  14. 百度地图绘制运动轨迹技巧
  15. 经典递归算法之Fibonacci序列
  16. 计算机组成原理学习-实验一 运算器实验(详细、系统)
  17. MATLAB矩阵的基本运算及操作
  18. 后LHC时代对撞机:瞬间输出能量超全球电力千倍
  19. 中华英才网 java_中华英才网校园招聘
  20. 给定一个数组int[] array={1,2,3,4,5,6,7,8,9,10}.将其前5个元素与后5 个元素对换,即第1 个元素与第10个元素互换,第2个与第9个元素互换...第5 个与第6 个元素

热门文章

  1. HDU 5384 Danganronpa (2015年多校比赛第8场)
  2. network 学习笔记
  3. 编译linux3内核,与busybox,用qemu模拟运行
  4. 查看Windows端口及端口关闭方法
  5. 数据处理的两个基本问题05 - 零基础入门学习汇编语言42
  6. 如何实时查看linux下的日志
  7. yii2 checkboxlist使用及数据入库
  8. 部署了OpenStack就拥有了云平台?还差很远呢
  9. 华为网赛云数据中心基础原理自测答案
  10. 【C++】源自指针的报错