转自:
下文笔者将讲述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<String> 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); } }