a.compareTo(b)); 和 String[] foo = {-6ren">
gpt4 book ai didi

java - 为什么可以通过使用类引用来使 lambda 引用实例方法?

转载 作者:行者123 更新时间:2023-11-30 07:00:13 27 4
gpt4 key购买 nike

String[] foo = {"one","two", "three"};
Arrays.sort(foo, (a,b) -> a.compareTo(b));

String[] foo = {"one","two", "three"};
Arrays.sort(foo, String::compareTo);

是等价的。

为什么当compareTo是一个实例方法时,我可以通过String引用compareTo

最佳答案

想想这个例子

Function<String, String> func;  

func = string -> string.toUpperCase();

func = String::toUpperCase;

将实例方法视为带有额外 this 参数的静态方法,目的是推导出方法引用。

    static String toUpperCase(String this)

关于java - 为什么可以通过使用类引用来使 lambda 引用实例方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30808514/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com