`

JDK7新特性

 
阅读更多

JDK7新特性

 

今天花了点时间研究了下JDK7新特性,JDK7与JDK6及之前的版本对比,还是做了许多改进,下面一一列举:

 

1、二进制字面量

JDK7开始,终于可以用二进制来表示整数(byte,short,int和long)。语法非常简单,只要在二进制数值前面加 0b或者0B   

例子:

1.int nInt = 0b0011;     

2.long nLong = 0b0100L; 

作为一个J2EE开发者,个人觉得还是使用原先的整形表示更一目了然。

 

2、数字字面量可以出现下划线

对于一些比较大的数字,我们定义起来总是不方面,经常缺少或者增加位数。JDK7为我们提供了一种解决方案,下划线可以出现在数字字面量。

例子:

int a = 10_0000_0000; 

注意:只能将下划线置于数字之间,以下使用方法是错误的,

1.数字的开头或者结尾,如:int err1 = _11,err2=11_;

2.小数点的前后,如:float err3=3._4,err4=3_.4

3.‘F’或者‘f’的后缀

4.只能用数字的位置

3、switch 语句可以用字符串了

众所周知,switch只能支持整型或字符型变量,有时我们编码过程中遇到类似的分支结构,却因为分支判断是字符串而无法使用switch语句,而使用大量的if else if语句,代码的可读性极差。

JDK7对switch功能进行了扩展,支持字符串。

例子:

 

 

4、泛型实例的创建可以通过类型推断来简化

例子:

JDK6

List<String> tempList = new ArrayList<String>();

Map<String,String> tempMap = new HashMap<String,String>();

JDK7

Map<String,String> tempMap = new HashMap<>();

List<String> tempList = new ArrayList<>();

5、try-with-resources 语句

提供了try-with-resources,可以自动关闭相关的资源(只要该资源实现了AutoCloseable接口,jdk7为绝大部分资源对象都实现了这个接口

例子:

 

6、Catch多个Exception

JDK允许一个Catch语句包含多个Exception,增加了代码的整洁性。

例子:

JDK6

 

JDK7

 

<!--EndFragment-->
  • 大小: 4 KB
  • 大小: 2.6 KB
  • 大小: 2.5 KB
  • 大小: 7.6 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics