Java 1.7 里有什么?
下面是Java 1.7 里新出现的功能的一些用法例子:
对集合的支持
创建List / Set / Map 时写法更简单了。
1 List< String> list = ["item"];
2 String item = list[0];
3 Set< String > set = {"item"};
4 Map< String,Integer > map = {"key" : 1};
5 int value = map["key"];
对资源的自动回收管理
下面的代码看起来有点麻烦 … 不是吗
1 BufferedReader br = new BufferedReader(new FileReader(path));
2 try {
3 return br.readLine();
4 } finally {
5 br.close();
6 }
相信你一定会喜欢下面这种写法
1 try (BufferedReader br = new BufferedReader(new FileReader(path)) {
2 return br.readLine();
3 }
泛型实例创建过程中类型引用的简化
当声明你的对象的接口是,你肯定是不想重复指明泛型类型
看看下面的这种写法多好呀…
1 Map<String,String> hello = new HashMap<>();
在数字中使用下划线
1 int billion = 1_000_000_000;
我不知道这个能有多少用处
对字符串进行switch case
1 String availability = "available";
2 switch(availability) {
3 case "available":
4 //code
5 break;
6 case "unavailable":
7 //code
8 break;
9 case "merged":
10 //code
11 default:
12 //code
13 break;
14 }
注意:在把字符串传进Switch case之前,别忘了检查字符串是否为Null。
二进制符号
你可用作二进制字符前加上 0b 来创建一个二进制类型。
1 int binary = 0b1001_1001;
一个catch里捕捉多个异常类型
1 try {
2 Here comes your code....
3 }
4 catch(IOException | NullPointerException | ..........) {
5 }
如果有人能说出更多的新特征,那就更好了。我相信里面有更多的很酷的新东西。
下面是Java 1.7 里新出现的功能的一些用法例子:
对集合的支持
创建List / Set / Map 时写法更简单了。
1 List< String> list = ["item"];
2 String item = list[0];
3 Set< String > set = {"item"};
4 Map< String,Integer > map = {"key" : 1};
5 int value = map["key"];
对资源的自动回收管理
下面的代码看起来有点麻烦 … 不是吗
1 BufferedReader br = new BufferedReader(new FileReader(path));
2 try {
3 return br.readLine();
4 } finally {
5 br.close();
6 }
相信你一定会喜欢下面这种写法
1 try (BufferedReader br = new BufferedReader(new FileReader(path)) {
2 return br.readLine();
3 }
泛型实例创建过程中类型引用的简化
当声明你的对象的接口是,你肯定是不想重复指明泛型类型
看看下面的这种写法多好呀…
1 Map<String,String> hello = new HashMap<>();
在数字中使用下划线
1 int billion = 1_000_000_000;
我不知道这个能有多少用处
对字符串进行switch case
1 String availability = "available";
2 switch(availability) {
3 case "available":
4 //code
5 break;
6 case "unavailable":
7 //code
8 break;
9 case "merged":
10 //code
11 default:
12 //code
13 break;
14 }
注意:在把字符串传进Switch case之前,别忘了检查字符串是否为Null。
二进制符号
你可用作二进制字符前加上 0b 来创建一个二进制类型。
1 int binary = 0b1001_1001;
一个catch里捕捉多个异常类型
1 try {
2 Here comes your code....
3 }
4 catch(IOException | NullPointerException | ..........) {
5 }
如果有人能说出更多的新特征,那就更好了。我相信里面有更多的很酷的新东西。