java8 方法引用详解_java8 新操作符::做方法引用详解

java8中引入了一个新的操作符::, 是两个英文半角的冒号, 这个操作符用来引用方法, 其本质也是对接口的一种重写。

请看下面的实例:

import java.util.ArrayList;

import java.util.List;

/**

* Created by outofmemory.cn on 2015/11/25.

*/

public class AppMethodReference {

public static void main(String[] args) {

List names = new ArrayList();

names.add("Bush");

names.add("Tom");

names.add("Jim");

System.out.println("print with instance method");

names.forEach(System.out::println);

System.out.println("print with instance method");

AppMethodReference appMethodReference = new AppMethodReference();

names.forEach(appMethodReference::printSomething);

System.out.println("print with static method");

names.forEach(AppMethodReference::printStatic);

}

private void printSomething(String str) {

System.out.println(str);

}

private static void printStatic(String input) {

System.out.println(input);

}

}

::操作符可以引用实例方法,也可以引用静态方法, 引用实例时::前面是实例, 引用静态方法时::前面是类。 上述方法输出内容如下:

print with instance method

Bush

Tom

Jim

print with instance method

Bush

Tom

Jim

print with static method

Bush

Tom

Jim

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值