淺析java 10中的var關(guān)鍵字用法
2018年3月20日,Oracle發(fā)布java10。java10為java帶來了很多新特性,其中讓人眼前一亮的便是var關(guān)鍵字的引入。
what
•java10引入了局部變量折斷 var用于聲明局部變量。
如var user=new ArrayList<User>();
why
•避免了信息冗余
•對齊了變量名
•更容易閱讀
how
•java10之前的變量聲明:
URL codefx = new URL("http://codefx.org") URLConnection connection = codefx.openConnection(); Reader reader = new BufferedReader( new InputStreamReader(connection.getInputStream()));
•java10
var codefx = new URL("http://codefx.org"); var connection = codefx.openConnection(); var reader = new BufferedReader( new InputStreamReader(connection.getInputStream()));
•在處理 var時,編譯器先是查看表達式右邊部分,也就是所謂的構(gòu)造器,并將它作為變量的類型,然后將該類型寫入字節(jié)碼當中。
attention
•只能用于帶有構(gòu)造器的局部變量,以下場景不適用
var foo; foo = "Foo"; var ints = {0, 1, 2}; var appendSpace = a -> a + " "; private var getFoo(){}
•除了局部變量,for循環(huán)是唯一可以使用 var的地方:
var numbers = List.of("a", "b", "c"); for (var nr : numbers) System.out.print(nr + " "); for (var i = 0; i < numbers.size(); i++) System.out.print(numbers.get(i) + " ");
總結(jié)
以上所述是小編給大家介紹的java 10中的var關(guān)鍵字用法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
基于jdk動態(tài)代理和cglib動態(tài)代理實現(xiàn)及區(qū)別說明
這篇文章主要介紹了基于jdk動態(tài)代理和cglib動態(tài)代理實現(xiàn)及區(qū)別說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-05-05IDEA報java:?java.lang.OutOfMemoryError:?Java?heap?space錯誤
這篇文章主要給大家介紹了關(guān)于IDEA報java:?java.lang.OutOfMemoryError:?Java?heap?space錯誤的解決辦法,文中將解決的辦法介紹的非常詳細,需要的朋友可以參考下2024-01-01Spring?MVC基于注解的使用之JSON數(shù)據(jù)處理的方法
這篇文章主要介紹了Spring?MVC基于注解的使用JSON數(shù)據(jù)處理,json是一種輕量級的數(shù)據(jù)交換格式,是一種理想的數(shù)據(jù)交互語言,它易于閱讀和編寫,同時也易于機器解析和生成,本文通過實例代碼給大家介紹的非常詳細,需要的朋友可以參考下2022-05-05Java 實戰(zhàn)范例之員工管理系統(tǒng)的實現(xiàn)
讀萬卷書不如行萬里路,只學書上的理論是遠遠不夠的,只有在實戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+vue+Springboot+ssm+mysql+maven+redis實現(xiàn)一個前后端分離的員工管理系統(tǒng),大家可以在過程中查缺補漏,提升水平2021-11-11