很短的一页代码,但是弹幕里很多人刷搞不清这是什么名堂,意义在哪里,甚至有人说脱裤子放屁;也有人说老师讲的不好。 首先这种气愤的心态是不对的,没有必要的; 学代码学到某些时刻有点像学自行车,别人在后边扶着指挥是没用的,要自己体悟,要进入一种状态才能学会。 package fangzu; import java.util.function.Function; public class day0417 { public static void change(String s1, Function<String,Integer>fun1){ Integer in=fun1.apply(s1);//int in=fun1.apply(s1)//自动插箱,把Integer类型转换为了int类型 System.out.println(in); } public static void main(String[] args) { String s=("1234"); change(s,(String str)->{ return Integer.parseInt(str); }); change(s,str->Integer.parseInt(str)); } } //很短的一个程序,这是在干嘛呢 // 不知道怎么说 //其实是这样一个过程。 //1.有一个change方法,方法有两个参数 s1和fun1; //2.change里面的方法就是 Integer=in等于fun调用apply函数式方法操作s1;然后打印,返回空。 //3.主方法里给change传两个参数,第一个是一个String,第二个是一个Function<String,Integer>; // 也就是传一个"1234",再传一个Lambda表达式; //lambda表达式中(str->Integer.parseInt(str)) 的str就相当于某某,是告诉Integer.parseInt操作对象是某某。
//老师的口音很奇怪,apply读成a play,妙的很