Java 1.7 里有什么?

下面是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

发表评论

电子邮件地址不会被公开。 必填项已用*标注