jdk1.7的新特性主要内容:
在switch中使用String,在1.7以前只支持byte,short,int,char,enum。使用方式和使用byte,short那些一样,就不举例子了。
try-with-resources,之前使用的很多IO操作都需要手动去关闭流,现在使用这种方式,只要是实现了java.lang.AutoCloseable和java.io.Closeable的类就不需要再手动关闭了。
例子:try(OutputStream out=new FileOutputStream("/home/a.txt")){}
如果是使用了多个需要关闭的流可以在括号中加入";"然后接在后面继续声明,声明时需要注意顺序,先声明的后关闭
捕获多个异常,之前捕获的每个异常都需要写一次catch,现在只需要一次catch
例子:catch(IllegalArgumentException | IllegalAccessException e){}
泛型实例化类型自动推断,例子看看就明白,在之前后面的泛型必须写,现在不需要了
例子:List<String> list=new ArrayList<>();
增加二进制表示
int a=123;//十进制
int b=0123;//八进制
int c=0x123;//十六进制
int d=0b101;//二进制(1.7新增)
数字中可以添加分隔符,编译的时候回自动去掉下划线
例子:int a=1000_000_000;