• JDK 1.7特性


    jdk1.7 新特性
    下面是Java 1.7 里新出现的功能的一些用法例子:
    1、对集合的支持
      创建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];
    
    2、对资源的自动回收管理
      下面的代码看起来有点麻烦 … 不是吗?
      
      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();
    
    3、泛型实例创建过程中类型引用的简化
      当声明你的对象的接口是,你肯定是不想重复指明泛型类型。
      看看下面的这种写法多好呀…
      
      MapString,String> hello = new Map();
    
      1Map hello = new Map();4、在数字中使用下划线
      
      int billion = 1_000_000_000;
    
      1int billion = 1_000_000_000;  我不知道这个能有多少用处。
    5、对字符串进行switch case
    String s = "test"; 
    switch (s) { 
    case "test" : 
    System.out.println("test"); 
    case "test1" : 
    System.out.println("test1"); 
    break ; 
    default : 
    System.out.println("break"); 
    break ; 
    }
      注意:在把字符串传进Switch case之前,别忘了检查字符串是否为Null。
    6、二进制符号
      你可用作二进制字符前加上 0b 来创建一个二进制类型。
      
      int binary = 0b1001_1001;
    
    7、一个catch里捕捉多个异常类型
      
      try {
      Here comes your code....}
      catch(IOException | NullPointerException | ..........) {
    8、语法上支持集合,而不一定是数组
      final List<Integer> piDigits = [ 1,2,3,4,5,8 ]; 
    9、新增一些取环境信息的工具方法
    File System.getJavaIoTempDir() // IO临时文件夹
    File System.getJavaHomeDir() // JRE的安装目录
    File System.getUserHomeDir() // 当前用户目录
    File System.getUserDir() // 启动java进程时所在的目录
    9、 Boolean类型反转,空指针安全,参与位运算
    Boolean Booleans.negate(Boolean booleanObj)
    True => False , False => True, Null => Null
    boolean Booleans.and(boolean[] array)
    boolean Booleans.or(boolean[] array)
    boolean Booleans.xor(boolean[] array)
    boolean Booleans.and(Boolean[] array)
    boolean Booleans.or(Boolean[] array)
    boolean Booleans.xor(Boolean[] array)
    10、安全的加减乘除
    int Math.safeToInt(long value)
    int Math.safeNegate(int value)
    long Math.safeSubtract(long value1, int value2)
    long Math.safeSubtract(long value1, long value2)
    int Math.safeMultiply(int value1, int value2)
    long Math.safeMultiply(long value1, int value2)
    long Math.safeMultiply(long value1, long value2)
    long Math.safeNegate(long value)
    int Math.safeAdd(int value1, int value2)
    long Math.safeAdd(long value1, int value2)
    long Math.safeAdd(long value1, long value2)
    int Math.safeSubtract(int value1, int value2)
    


  • 相关阅读:
    双指针法
    secureCRT安装与激活
    [Python之路] Python各类常用库整理
    [工具] Atom Markdown编辑器
    [Python之路] object类中的特殊方法
    [Python自学] Flask框架 (5) (DBUtils数据库链接池、wtforms)
    [Python自学] Flask框架 (4) (Request&Session上下文管理、redis保存session、App&g上下文管理)
    [刷题] Leetcode算法 (2020-3-1)
    [工具] Window10搭建Django开发环境
    [算法] 动态规划 (1) (工作最优收入)
  • 原文地址:https://www.cnblogs.com/leejuen/p/5547482.html
Copyright © 2020-2023  润新知