resource.use() 호출로 변환할 수 있는 finally 내의 resource.close()를 포함하는 try-finally 블록을 보고합니다.

use()는 명시적인 close() 호출이 필요하지 않으므로 가독성이 더 높고 오류가 발생할 확률도 더 낮습니다.

예:


  fun example() {
      val reader = File("file.txt").bufferedReader()
      try {
          reader.lineSequence().forEach(::print)
      } finally {
          reader.close()
      }
  }

빠른 수정이 적용된 후:


  fun example() {
      File("file.txt").bufferedReader().use { reader ->
          reader.lineSequence().forEach(::print)
      }
  }