kotlin use

  • 实现了Closeable接口的对象可调用use函数

  • use函数会自动关闭调用者(无论中间是否出现异常)

  • Kotlin的File对象和IO流操作变得行云流水

  • use函数内部实现也是通过try-catch-finally块捕捉的方式,所以不用担心会有异常抛出导致程序退出

  • close操作在finally里面执行,所以无论是正常结束还是出现异常,都能正确关闭调用者

  • java

FileInputStream fis = null;
DataInputStream dis = null;
try {
    fis = new FileInputStream("/home/test.txt");
    dis = new DataInputStream(new BufferedInputStream(fis));
    String lines = "";
    while((lines = dis.readLine()) != null){
        System.out.println(lines);
    }
} catch (IOException e){
    e.printStackTrace();
} finally {
    try {
        if(dis != null)
            dis.close();
    } catch (IOException e) {
        e.printStackTrace();
    }
    try {
        if(fis != null)
            fis.close();
    } catch (IOException e) {
        e.printStackTrace();
    }
}
  • kotlin
File("/home/test.txt").readLines()
        .forEach { println(it) }

你可能感兴趣的:(kotlin use)