Java 1.7 里有什么?

来源:互联网 发布:知乎怎么看提问时间 编辑:程序博客网 时间:2024/04/24 13:05

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

对集合的支持

创建List / Set / Map 时写法更简单了。

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

对资源的自动回收管理

下面的代码看起来有点麻烦 … 不是吗

1BufferedReader br = new BufferedReader(new FileReader(path));
2try {
3   return br.readLine();
4finally {
5   br.close();
6}

相信你一定会喜欢下面这种写法

1try (BufferedReader br = new BufferedReader(newFileReader(path)) {
2   return br.readLine();
3}

泛型实例创建过程中类型引用的简化

当声明你的对象的接口是,你肯定是不想重复指明泛型类型
看看下面的这种写法多好呀…

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

在数字中使用下划线

1int billion = 1_000_000_000;

我不知道这个能有多少用处

对字符串进行switch case

1String availability = "available";
2switch(availability) {
3 case "available":
4    //code
5    break
6 
7  case "unavailable":
8    //code
9    break
10 
11  case "merged":
12    //code 
13 
14  default:
15    //code
16    break;
17}

注意:在把字符串传进Switch case之前,别忘了检查字符串是否为Null。

二进制符号

你可用作二进制字符前加上 0b 来创建一个二进制类型。

1int binary = 0b1001_1001;

一个catch里捕捉多个异常类型

1try {
2Here comes your code....
3}
4catch(IOException | NullPointerException | ..........) {
5}

如果有人能说出更多的新特征,那就更好了。我相信里面有更多的很酷的新东西。

来源:http://www.aqee.net/whas-up-in-java-1-7/

原创粉丝点击