System.out::println是用来干嘛的?

我也不说源码什么的。因为网上太多了。但是没这么让别人通俗易懂。在这里我就通过举例让你知道:: 是干嘛的。

定义一个数组集合 ,先用拉姆达表达式 在forEach中进行遍历。

关于拉姆达表达式,很简单理解 (参数) -> {要实现的方法内容 }

 public static void main(String[] args) {

        List<String> Lists = Arrays.asList("AAAAA", "BBBBBB", "CCCCCC");

        Lists.forEach(
                (x)->{
            System.out.println(x);
        }

        );


    }

输入结果

AAAAA
BBBBBB
CCCCCC

我们把forEach理解成 for遍历 ,也就是下面这个代码。输出结果和上面一样。其实他们就是差不多的东西

    for (String  list:Lists) {
            System.out.println(list);
        }

这个时候,你把forEach里面的内容换成

System.out::println  你会发现,输入的结果也是一样。 
 public static void main(String[] args) {

        List<String> Lists = Arrays.asList("AAAAA", "BBBBBB", "CCCCCC");

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

}

其实  ::  并不仅仅用于 System.out::println,我们可以任意地方用。比如如下代码。

 Lists.forEach(new util()::HH);    Lists.forEach(new util()::GG); 他们的输出结果都是一样。

import java.util.Arrays;
import java.util.List;

public class test3 {


    public static void main(String[] args) {

        List<String> Lists = Arrays.asList("AAAAA", "BBBBBB", "CCCCCC");


        Lists.forEach(new util()::HH);
         Lists.forEach(new util()::GG);
    }

}

class util{

    public void HH(String x){

        System.out.println(x);
    }


     public void GG(String y){
        System.out.println(y);
    }

}

是不是有点头绪了。   现在,你在看看下面三张图,你肯定就恍然大悟了。

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值