반응형
[출처 - Kotlin In Action] [아래 내용들은 Kotlin In Action을 공부하면서 스스로 정리한 내용입니다]
다른 공부를 한다고 한동안 kotlin 정리를 못했지만 다시 kotlin도 정리하려 합니다.
컬렉션을 이용하여 집합을 만들어 볼 수 있습니다. 다음과 같이 간단한 컬렉션을 만들어 볼 수 있습니다.
val set = hashSetOf(1, 7, 53)
val list = arrayListOf(1, 7, 53)
val map = hashMapOf(1 to "one", 7 to "seven", 53 to "fifty-three")
fun main(args: Array<String>) {
println(set)
println(list)
println(map)
println(set.javaClass)
println(list.javaClass)
println(map.javaClass)
}
실행 해보면
[1, 53, 7]
[1, 7, 53]
{1=one, 53=fifty-three, 7=seven}
class java.util.HashSet
class java.util.ArrayList
class java.util.HashMap
위의 hashMapOf의 to는 언어가 제공하는 키워드가 아니라 일반 함수입니다. 그리고 위의 결과에서 class java를 나타내는 것을 보면 코틀린 자체의 컬렉션 기능을 제공하지 않고 자바의 기존 컬렉션을 사용한 다는 것을 알 수 있습니다.
그럼 코틀린 자체 컬렉션을 제공하지 않는 이유는 무엇일까?
자바 코드와 상호작용을 즉, 호환을 쉬게 하기 위해서 입니다. 자바의 기존 컬렉션을 사용하지만 kotlin 으로 만든 컬렉션이 더 많은 기능을 쓸 수 있습니다.
fun main(args: Array<String>) {
val strings = listOf("first", "second", "fourteenth")
println(strings.last())
val numbers = setOf(1, 14, 2)
println(numbers.max())
}
fourteenth
14
이렇게 kotlin 언어가 제공하는 기능으로 컬렉션의 값들을 쉽게 획득 할 수 있습니다.
반응형
'2023년 이전 > kotlin' 카테고리의 다른 글
Kotlin - 확장 함수 와 확장 프로퍼티 (0) | 2020.02.19 |
---|---|
Kotlin - 함수를 호출하기 쉽게 만들기 (0) | 2020.02.19 |
Kotlin - let, apply, run, with, also (0) | 2019.11.20 |
ArrayList copy 관련 (0) | 2019.10.25 |
코틀린(Kotlin)- 코틀린의 예외 처리 (0) | 2019.10.11 |