用法说明

JDK8中有双冒号的用法,就是把方法当做参数传到stream内部,使stream的每个元素都传入到该方法里面执行一下。

  类名::方法名 

使用示例

person -> person.getAge();
转换为:
Person::getAgenew HashMap<>()
转换为:
HashMap::new
public class MyTest {public static void main(String[] args) {List<String> a1 = Arrays.asList("a", "b", "c");a1.forEach(x -> MyTest.printValur(x));}public static void printValur(String str) {System.out.println("print value : " + str);}
}a1.forEach(x -> MyTest.printValur(x));
转换为:
a1.forEach(MyTest::printValur);或者:
Consumer<String> methodParam = MyTest::printValur;
a1.forEach(x-> methodParam.accept(x));

说明:在JDK8中,接口Iterable 8中默认实现了forEach方法,调用了 JDK8中增加的接口Consumer内的accept方法,执行传入的方法参数。

default void forEach(Consumer<? super T> action) {Objects.requireNonNull(action);for (T t : this) {action.accept(t);}
}

java8学习之双冒号用法相关推荐

  1. java函数参数使用冒号_java8中:: 用法示例(JDK8双冒号用法)

    JDK8中有双冒号的用法,就是把方法当做参数传到stream内部,使stream的每个元素都传入到该方法里面执行一下. 代码其实很简单: 以前的代码一般是如此的: public class Accep ...

  2. JDK8 双冒号用法

    java8 :: 用法 (JDK8 双冒号用法) 特性 jdk8中使用了::的用法.就是把方法当做参数传到stream内部,使stream的每个元素都传入到该方法里面执行一下,双冒号运算就是Java中 ...

  3. java8 :: 用法 (JDK8 双冒号用法)

    JDK8中有双冒号的用法,就是把方法当做参数传到stream内部,使stream的每个元素都传入到该方法里面执行一下. 代码其实很简单: 以前的代码一般是如此的: public class Accep ...

  4. c++学习之——双冒号和单冒号的用法

    C++里面双冒号和冒号及点号引用符的用法与区别 一.用双冒号的地方 1.在类外定义函数的时候,要用到void ClassName::FuntionName(pram){} 例如:声明了一个类A,类A里 ...

  5. mysql 双冒号_jdk8新特性之双冒号 :: 用法及详解

    jdk8的新特性有很多,最亮眼的当属函数式编程的语法糖,本文主要讲解下双冒号::的用法. 概念 类名::方法名,相当于对这个方法闭包的引用,类似js中的一个function.比如: Function  ...

  6. python列表截取双冒号“::“用法

    比如: my_list = list(range(0, 10)) 双冒号的用法是:列表[起始:终止:步长],默认是my_list[0:-1:1] 一个冒号-示例: my_list[1:2] # 等同于 ...

  7. java 双冒号用法

    JDK8中有双冒号的用法,形如Class::methodname,符号左边是调用方法所处的类名,符号右边是调用的静态方法.简单的说,就是逐一传入参数值到某个类的静态方法并调用该静态方法. 以前的方式 ...

  8. java双冒号_jdk8新特性之双冒号 :: 用法及详解

    jdk8的新特性有很多,最亮眼的当属函数式编程的语法糖,本文主要讲解下双冒号::的用法. 概念 类名::方法名,相当于对这个方法闭包的引用,类似js中的一个function.比如: Function ...

  9. 关于冒号和双冒号用法

    1.冒号(:)用法 (1)表示机构内位域的定义(即该变量占几个bit空间) typedef struct _XXX{ unsigned char a:4; unsigned char c; } ; X ...

最新文章

  1. 分布式服务框架-原理与实践:14---流量控制-学习笔记(理论篇)
  2. android启动流程之lk,Android系统之LK启动流程分析(一)
  3. Android短信拦截
  4. 【深度学习】caffe 中的一些参数介绍
  5. 商业软件中常见的修饰词
  6. [css] 要是position跟display、overflow、float这些特性相互叠加后会怎么样?
  7. AlertDialog源码解析之一
  8. 查找包含特定值的数组的文档
  9. linux第三版 网页链接
  10. xposed+justtrustme
  11. Win系统 - Win10 进入 BIOS 系统(非启动快捷键)
  12. 模型预测控制(MPC)——动态矩阵控制(DMC)
  13. 骆驼命名法,帕斯卡命名法与下划线命名法
  14. Hadoop常见端口号及配置文件
  15. IDES翻译—采购流程中的Enjoy界面
  16. 中科蓝汛----指示灯配置使用方法
  17. tmux系列:3、tmux窗口和窗格
  18. 关于月球自转周期的一些猜想
  19. 目标检测标注工具(可自定义生成标签模板)
  20. QuickSort c++

热门文章

  1. 螺栓、螺柱、螺钉的分类
  2. 如何使用KMS(2)
  3. 电脑服务器型号在哪,电脑服务器型号内存
  4. 插值、拟合和逼近的对比
  5. 真香!红色警戒游戏源代码被开源了!
  6. windows 若依部署
  7. Latex-TiKZ绘制数学平面几何图教程
  8. Todesk 远程工具安装及配置方法(认真看)
  9. uniapp 封装storage缓存
  10. 圣诞节快来了~用python做一个粒子烟花震撼众人赚个女孩回来吧~