• 支持二进制字面量
  • 数字字面量可以出现下划线
  • switch 语句支持符串
  • 泛型简化,菱形泛型
  • 异常的多个catch合并,每个异常之间使用或 “|”
  • try-with-resources 语句

    支持二进制字面量

    1. @Test
    2. public void demo1(){
    3. System.out.println(0b110);//6
    4. }

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

    1. @Test
    2. public void demo2(){
    3. System.out.println(0b100_100);//36
    4. System.out.println(100_100);//100100
    5. }

    switch 语句支持符串

     @Test
     public void demo3(){
         String str = "2";
         switch (str){
             case "1":
                 System.out.println("1");
                 break;
             case "2":
                 System.out.println("2");
                 break;
             case "3":
                 System.out.println("3");
                 break;
             default:
                 System.out.println("其他");
                 break;
         }
    
     }
    

    泛型简化,菱形泛型

     @Test
     public void demo4(){
         //JDK1.7之前
         Map<String, Object> map = new HashMap<String, Object>();
         List<Object> list = new ArrayList<Object>();
    
         //JDK1.7起
         Map<String, Object> map2 = new HashMap<>();
         List<Object> list2 = new ArrayList<>();
    
     }
    

    异常的多个catch合并,每个异常之间使用或 “|”

    ```java @Test public void demo5(){

     try {
         FileInputStream fis = new FileInputStream("");
         Thread.sleep(1000);
     } catch (FileNotFoundException | InterruptedException e) {
         e.printStackTrace();
     }
    
}
<a name="C0cMe"></a>
### try-with-resources 语句
try-with-resources 语句:自动关闭流<br />开发中一般不用

```java
 try(...){}
    @Test
    public void demo6() throws IOException {

        //在try()中书写的对象,都需要实现AutoCloseable接口
        try(
                FileInputStream fis = new FileInputStream("input.txt");
                FileOutputStream fos = new FileOutputStream("output.txt");
                MyClose mc = new MyClose();
        ){
            int b;
            while((b = fis.read()) != -1) {
                fos.write(b);
            }
        }
    }
class MyClose implements AutoCloseable {

    @Override
    public void close() {
        System.out.println("我关了");
    }
}