Java 1.7 裡有什麼?

Web開發者發表於2012-07-24

下面是Java 1.7 裡新出現的功能的一些用法例子:

對集合的支援

建立List / Set / Map 時寫法更簡單了。

    List< String> list = ["item"];  
    String item = list[0];  
    Set< String > set = {"item"};  
    Map< String,Integer > map = {"key" : 1};  
    int value = map["key"];  

對資源的自動回收管理

下面的程式碼看起來有點麻煩 … 不是嗎

    BufferedReader br = new BufferedReader(new FileReader(path));  
    try {  
       return br.readLine();  
    } finally {  
       br.close();  
    }  

相信你一定會喜歡下面這種寫法

    try (BufferedReader br = new BufferedReader(new FileReader(path)) {  
       return br.readLine();  
    }  

泛型例項建立過程中型別引用的簡化

當宣告你的物件的介面是,你肯定是不想重複指明泛型型別
看看下面的這種寫法多好呀…

    Map<String,String> hello = new HashMap<>();  

在數字中使用下劃線

    int billion = 1_000_000_000;

我不知道這個能有多少用處

對字串進行switch case

    String availability = "available";  
    switch(availability) {  
     case "available":  
        //code  
        break;  
      
      case "unavailable":  
        //code  
        break;  
      
      case "merged":  
        //code  
      
      default:  
        //code  
        break;  
    }  

注意:在把字串傳進Switch case之前,別忘了檢查字串是否為Null。

二進位制符號

你可用作二進位制字元前加上 0b 來建立一個二進位制型別。

int binary = 0b1001_1001;

一個catch裡捕捉多個異常型別

    try {  
    Here comes your code....  
    }  
    catch(IOException | NullPointerException | ..........) {  
    }  

如果有人能說出更多的新特徵,那就更好了。我相信裡面有更多的很酷的新東西。

英文連結:What's Up in Java 1.7

相關文章