JDK7新特性_JDK7的六個新特性
阿新 • • 發佈:2019-01-05
二進位制字面量 JDK7開始,終於可以用二進位制來表示整數( byte,short,int和long)。使用二進位制字面 量的好處是,可以使程式碼更容易被理解。 語法非常簡單,只要在二進位制數值前面加 0b或者0B 舉例: int x = ob110110 數字字面量可以出現下劃線 為了增強對數值的閱讀性,如我們經常把資料用逗號分隔一樣。JDK7提供了_對資料分隔。 舉例: int x = 100_1000; 注意事項: 不能出現在進位制標識和數值之間 不能出現在數值開頭和結尾 不能出現在小數點旁邊 switch 語句可以用字串 switch 語句可以用字串 泛型簡化 在集合中講解泛型的時候已經使用過了 異常的多個catch合併 在異常的時候,已經使用了 try-with-resources 語句 格式: try(必須是java.lang.AutoCloseable的子類物件){…} 好處: 資源自動釋放,不需要close()了 把需要關閉資源的部分都定義在這裡就ok了 主要是流體系的物件是這個介面的子類(看JDK7的API)
package cn.itcast_03; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.ArrayList; public class Demo { public static void main(String[] args) { // 二進位制字面量 int x = 0b100101; System.out.println(x); // 數字字面量可以出現下劃線 int y = 1_1123_1000; // 不能出現在進位制標識和數值之間 int z = 0x111_222; // 不能出現在數值開頭和結尾 int a = 0x11_22; // 不能出現在小數點旁邊 double d = 12.3_4; // switch 語句可以用字串 // 泛型簡化 ArrayList<String> array = new ArrayList<>(); // 異常的多個catch合併 method(); } private static void method() { // try-with-resources 語句 // try(必須是java.lang.AutoCloseable的子類物件){…} try { FileReader fr = new FileReader("a.txt"); FileWriter fw = new FileWriter("b.txt"); int ch = 0; while ((ch = fr.read()) != -1) { fw.write(ch); } fw.close(); fr.close(); } catch (IOException e) { e.printStackTrace(); } // 改進版的程式碼 try (FileReader fr = new FileReader("a.txt"); FileWriter fw = new FileWriter("b.txt");) { int ch = 0; while ((ch = fr.read()) != -1) { fw.write(ch); } } catch (IOException e) { e.printStackTrace(); } } }