java8学习之双冒号用法
用法说明
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学习之双冒号用法相关推荐
- java函数参数使用冒号_java8中:: 用法示例(JDK8双冒号用法)
JDK8中有双冒号的用法,就是把方法当做参数传到stream内部,使stream的每个元素都传入到该方法里面执行一下. 代码其实很简单: 以前的代码一般是如此的: public class Accep ...
- JDK8 双冒号用法
java8 :: 用法 (JDK8 双冒号用法) 特性 jdk8中使用了::的用法.就是把方法当做参数传到stream内部,使stream的每个元素都传入到该方法里面执行一下,双冒号运算就是Java中 ...
- java8 :: 用法 (JDK8 双冒号用法)
JDK8中有双冒号的用法,就是把方法当做参数传到stream内部,使stream的每个元素都传入到该方法里面执行一下. 代码其实很简单: 以前的代码一般是如此的: public class Accep ...
- c++学习之——双冒号和单冒号的用法
C++里面双冒号和冒号及点号引用符的用法与区别 一.用双冒号的地方 1.在类外定义函数的时候,要用到void ClassName::FuntionName(pram){} 例如:声明了一个类A,类A里 ...
- mysql 双冒号_jdk8新特性之双冒号 :: 用法及详解
jdk8的新特性有很多,最亮眼的当属函数式编程的语法糖,本文主要讲解下双冒号::的用法. 概念 类名::方法名,相当于对这个方法闭包的引用,类似js中的一个function.比如: Function ...
- python列表截取双冒号“::“用法
比如: my_list = list(range(0, 10)) 双冒号的用法是:列表[起始:终止:步长],默认是my_list[0:-1:1] 一个冒号-示例: my_list[1:2] # 等同于 ...
- java 双冒号用法
JDK8中有双冒号的用法,形如Class::methodname,符号左边是调用方法所处的类名,符号右边是调用的静态方法.简单的说,就是逐一传入参数值到某个类的静态方法并调用该静态方法. 以前的方式 ...
- java双冒号_jdk8新特性之双冒号 :: 用法及详解
jdk8的新特性有很多,最亮眼的当属函数式编程的语法糖,本文主要讲解下双冒号::的用法. 概念 类名::方法名,相当于对这个方法闭包的引用,类似js中的一个function.比如: Function ...
- 关于冒号和双冒号用法
1.冒号(:)用法 (1)表示机构内位域的定义(即该变量占几个bit空间) typedef struct _XXX{ unsigned char a:4; unsigned char c; } ; X ...
最新文章
- 分布式服务框架-原理与实践:14---流量控制-学习笔记(理论篇)
- android启动流程之lk,Android系统之LK启动流程分析(一)
- Android短信拦截
- 【深度学习】caffe 中的一些参数介绍
- 商业软件中常见的修饰词
- [css] 要是position跟display、overflow、float这些特性相互叠加后会怎么样?
- AlertDialog源码解析之一
- 查找包含特定值的数组的文档
- linux第三版 网页链接
- xposed+justtrustme
- Win系统 - Win10 进入 BIOS 系统(非启动快捷键)
- 模型预测控制(MPC)——动态矩阵控制(DMC)
- 骆驼命名法,帕斯卡命名法与下划线命名法
- Hadoop常见端口号及配置文件
- IDES翻译—采购流程中的Enjoy界面
- 中科蓝汛----指示灯配置使用方法
- tmux系列:3、tmux窗口和窗格
- 关于月球自转周期的一些猜想
- 目标检测标注工具(可自定义生成标签模板)
- QuickSort c++