对集合的支持
创建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 Map<>();
在数字中使用下划线
- 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 | ..........) {
- }