JDK8 双冒号用法
java8 :: 用法 (JDK8 双冒号用法)
特性
jdk8中使用了::的用法。就是把方法当做参数传到stream内部,使stream的每个元素都传入到该方法里面执行一下,双冒号运算就是Java中的[方法引用],[方法引用]的格式是:
类名::方法名
注意此处没有()。
案例:
表达式:
person -> person.getAge();
使用双冒号:
Person::getAge
表达式:
new HashMap<>()
使用双冒号:
HsahMap :: new
部分代码案例
未使用双冒号
public class MyTest {public static void main(String[] args) {List<String> a1 = Arrays.asList("a", "b", "c");for (String a : a1) {printValur(a);};a1.forEach(x -> MyTest.printValur(x));}public static void printValur(String str) {System.out.println("print value : " + str);}
}
使用后
a1.forEach(MyTest::printValur);Consumer<String> consumer = MyTest::printValur;a1.forEach(x -> consumer.accept(x));
未使用双冒号:
List<String> list = a1.stream().map(x -> x.toUpperCase()).collect(Collectors.toList());System.out.println(list.toString());
使用双冒号:
ArrayList<String> collect = a1.stream().map(String::toUpperCase).collect(Collectors.toCollection(ArrayList::new));System.out.println(collect.toString());
JDK8 双冒号用法相关推荐
- java函数参数使用冒号_java8中:: 用法示例(JDK8双冒号用法)
JDK8中有双冒号的用法,就是把方法当做参数传到stream内部,使stream的每个元素都传入到该方法里面执行一下. 代码其实很简单: 以前的代码一般是如此的: public class Accep ...
- java8 :: 用法 (JDK8 双冒号用法)
JDK8中有双冒号的用法,就是把方法当做参数传到stream内部,使stream的每个元素都传入到该方法里面执行一下. 代码其实很简单: 以前的代码一般是如此的: public class Accep ...
- mysql 双冒号_jdk8新特性之双冒号 :: 用法及详解
jdk8的新特性有很多,最亮眼的当属函数式编程的语法糖,本文主要讲解下双冒号::的用法. 概念 类名::方法名,相当于对这个方法闭包的引用,类似js中的一个function.比如: Function ...
- java 双冒号用法
JDK8中有双冒号的用法,形如Class::methodname,符号左边是调用方法所处的类名,符号右边是调用的静态方法.简单的说,就是逐一传入参数值到某个类的静态方法并调用该静态方法. 以前的方式 ...
- java8学习之双冒号用法
用法说明 JDK8中有双冒号的用法,就是把方法当做参数传到stream内部,使stream的每个元素都传入到该方法里面执行一下. 类名::方法名 使用示例 person -> person.ge ...
- java双冒号_jdk8新特性之双冒号 :: 用法及详解
jdk8的新特性有很多,最亮眼的当属函数式编程的语法糖,本文主要讲解下双冒号::的用法. 概念 类名::方法名,相当于对这个方法闭包的引用,类似js中的一个function.比如: Function ...
- python列表截取双冒号“::“用法
比如: my_list = list(range(0, 10)) 双冒号的用法是:列表[起始:终止:步长],默认是my_list[0:-1:1] 一个冒号-示例: my_list[1:2] # 等同于 ...
- 关于冒号和双冒号用法
1.冒号(:)用法 (1)表示机构内位域的定义(即该变量占几个bit空间) typedef struct _XXX{ unsigned char a:4; unsigned char c; } ; X ...
- C++ 单冒号与双冒号用法
1.冒号(:)用法 (1)表示机构内位域的定义(即该变量占几个bit空间) typedef struct _XXX{ unsigned char a:4; unsigned char c; } ; X ...
最新文章
- struts基本原理图
- python使用说明书-InfluxDB——python使用手册
- oracle手动启动服务
- mysql cmd ping_cmd命令行的ping用法
- php中延迟绑定,PHP静态延迟绑定
- 为什么说Java是2021年最值得学的技术?
- MySQL索引背后的数据结构及算法原理(转)
- iOS: 环信的推送
- django生产环境部署
- Unity 3D 进度条制作
- android网络框架
- [Java] 蓝桥杯ALGO-111 算法训练 明明的随机数
- java短信验证码实现_社交APP开发短信验证是通过什么技术实现
- SDOI 2018 R2 游记
- 浅谈IPFS星际文件系统和Filecoin是什么?
- 汉字转为16进制的unicode
- 【一起入门NLP】中科院自然语言处理作业一:RNN,DNN,CNN 进行猫狗分类(pytorch入门)【代码+报告】
- win7提示盗版 且各种工具无法激活
- 课后作业——Day7
- jzoj3461. 小麦亩产一千八 斐波拉契数列
热门文章
- 微信小程序----地理围栏实现员工防作弊地图打卡功能
- EDAS投会议论文遇见的问题及部分解决办法——总结
- java设置窗体不透明的函数_透明窗口(窗口上面文字图片等内容不透明)的实现(使用SetLayeredWindowAttributes API函数)...
- 图解网络:组建一个网络需要哪些网络设备和安全设备
- 【知识图谱】实践篇——基于医疗知识图谱的问答系统实践(Part5-完结):信息检索与结果组装
- 谷歌adwords教程_区块链技术作为Google AdWords中的安全剧院
- Arduino Mixly入门到精通教程
- 磁链Ψ、磁通φ、磁势F
- No enclosing instance of type * is accessible. Must qualify the allocation with an enclosing instanc
- OpenCV--颜色通道分离和合并