java 类型推理_java 11 局部变量类型推断
什么是局部變量類型推斷?
var javastack = "javastack";
System.out.println(javastack);
大家看出來了,局部變量類型推斷就是左邊的類型直接使用 var 定義,而不用寫具體的類型,編譯器能根據右邊的表達式自動推斷類型,如上面的 String 。
var javastack = "javastack";
就等于:
String javastack = "javastack";
在聲明隱式類型的lambda表達式的形參時允許使用var
使用var的好處是在使用lambda表達式時給參數加上注解
(@Deprecated var x, @Nullable var y) -> x.process(y);
var 語法 : 局部變量的類型推斷.
注意點 :
?1) var a; 這樣不可以, 因為無法推斷.
?2) 類的屬性的數據類型不可以使用var.
有參數的lambda表達式使用
函數式接口 :
?Consumer: 消費型函數式接口.
?public void accept(T t);
?
Consumer consumer = t -> System.out.println(t.toUpperCase());
Consumer consumer = (var t) -> System.out.println(t.toUpperCase());
錯誤的形式: 必須要有類型, 可以加上var
Consumer consumer = (@Deprecated t) -> System.out.println(t.toUpperCase());
正確的形式:
Consumer consumer = (@Deprecated var t) -> System.out.println(t.toUpperCase());
總結
以上是生活随笔為你收集整理的java 类型推理_java 11 局部变量类型推断的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 获取显示器的唯一编号_宝马奔驰才配拥有的
- 下一篇: 怎么查看ingress的规则_有机合成中