Use (2) 썸네일형 리스트형 코틀린(Kotlin) - inline 함수 : 람다의 부가 비용 없애기 람다의 경우 컴파일 단계에서 파라미터 개수에 따라 FunctionN 형태의 인터페이스로 변환이 됩니다. 예를 들어 아래와 같이 파라미터가 두 개인 람다 식은 Function2 의 인터페이스로 변환이 되는 것을 알 수가 있습니다. fun calculator(x: Int, y: Int, operation: (Int, Int) -> Int) { operation(x, y) } /* 컴파일 시, FunctionN 형태의 인터페이스 구현 객체로 변환 */ public final void calculator(int x, int y, @NotNull Function2 operation) { Intrinsics.checkNotNullParameter(operation, "operation"); operation.inv.. 코틀린(Kotlin) - 초간단 파일 저장 방법! fun saveFile(inputStream: InputStream, filePath: String) { //저장할 파일 val saveFile = File(filePath) saveFile.outputStream().use { fileOutput -> inputStream.copyTo(fileOutput) } } 기존에 루프(Loop)를 돌면서 버퍼를 읽는 방식 대신, 코틀린에서 지원하는 copyTo() 기능으로 아주 간편하게 바이트를 복사할 수 있고, use() 함수가 I/O resource를 자동으로 관리해주기 때문에, 초간단하게 파일 저장 코드를 구현할 수가 있습니다! 확장 함수를 이용해서, 더 멋지게 만들기! 코틀린에는 마치 기존 클래스에 구현된 기능인 것처럼 추가적인 함수를 커스텀하여 사용할 .. 이전 1 다음