[이펙티브 코틀린] Item22. 일반적인 알고리즘을 구현할 때 제네릭을 사용하라
·
Kotlin/이펙티브 코틀린
아규먼트(argument)로 함수에 값을 전달할 수 있는 것처럼, 타입 아규먼트를 사용하면 함수에 타입을 전달할 수 있습니다. 타입 아규먼트를 사용하는(타입 파라미터를 갖는) 함수를 제네릭 함수라고 부릅니다. 예를 들어, slice 함수는 타입 파라미터 T를 갖습니다. public fun List.slice(indices: IntRange): List { if (indices.isEmpty()) return listOf() return this.subList(indices.start, indices.endInclusive + 1).toList() } 타입 파라미터는 컴파일러에 타입과 관련된 정보를 제공하여 컴파일러가 타입을 정확하게 추측할 수 있게 해줍니다. 제네릭은 기본적으로 List 또는 Set처럼 ..