转自:
下文笔者将讲述java8中“::”双冒号的简介说明
“::”双冒号简介
“::”双冒号是JDK8中的用法,
其主要功能为:将方法作为参数传入stream中,使stream中每个元素都能进入方法中运行,其格式如下所示:
类名::方法名
------------------------------------------------
表达式
user -> user.getAge();
修改为双冒号写法
User::getAge
------------------------------------------------
表达式
new HashMap<>()
修改为双冒号写法
HsahMap::new
例:
package com.java265.other;
import java.util.Arrays;
import java.util.List;
public class test {
/*
* java265.com 双冒号的示例分享
*/
public static void main(String[] args) throws Exception {
List a1 = Arrays.asList("java265.com", "java爱好者", "Java网站");
System.out.println("=============");
// 最原始的写法
for (String a : a1) {
showInfo(a);
}
;
System.out.println("=============");
// Lambda
a1.forEach(x -> test.showInfo(x));
System.out.println("=============");
// 使用双冒号写法
a1.forEach(test::showInfo);
}
public static void showInfo(String str) {
System.out.println("print value : " + str);
}
}
