技术开发 频道

Java 7:最新特性、代码示例及性能测试

  Java 7新特性的代码实例

  下面列出的大多数例子都是来源于Joe Wright博客中(Java7中的新语言特性)的高水平文章。

  集合的语言支持

  在这里我们主要讲的是,当创建一个List、Set或者Map的时候,你怎样尽量少写代码。你不必先实例化Object,然后再给Collection添加元素。你现在只需1行代码就可以完成。

 List list = ["item"];
 String item = list[0];
 Set set
= {"item"};
 Map map
= {"key" : 1};
 
int value = map["key"];

  自动资源管理

  由于try / catch语句的原因,冗长的代码令人非常头痛。你或许会喜欢这个全新的特性。

  实际上,下面这些代码:

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();
  }  

  通用实例创建来改进类型推断(diamond)

  当你把对象的接口申明指定成范型后,你在对象实例化时不得不再指定一次。现在,你不必如此了,因为你可以这样:

Map> map = new HashMap<>();

  数值文字的加强

  我不敢肯定这个对大多数人都有用。你可以这样做:

int billion = 1_000_000_000;

  允许在switch中使用字符串

  这个无需解释,其意思很明确。

String availability = "available";
  
switch(availability)
{
  
case "available":
      
//code
      break;
    
case "unavailable":
      
//code
      break;
    
case "merged":
      
//code
     default:
    
//code
     break;
  }  

  二进制文字

  你可以使用前缀0b创建二进制文字

int binary = 0b1001_1001;

  以上这些就是Java1.7的代码实例。如果有人能给我指出还有哪些没有包含进去,那就更好了。我敢肯定,已经有其他的开发人员对此进行了关注。

0
相关文章