Kotlin에서 배열을 자르는 방법은 여러 가지가 있습니다. 배열의 일부분을 선택하여 새로운 배열을 생성하는 방법으로 sliceArray()
, take()
, drop()
등의 함수를 사용할 수 있습니다.
sliceArray()
함수 사용:
fun main() {
val originalArray = arrayOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
val slicedArray = originalArray.sliceArray(2 until 6) // 인덱스 2부터 5까지의 요소 선택
println(slicedArray.joinToString()) // 출력: 3, 4, 5, 6
}
take()
함수 사용:
fun main() {
val originalArray = arrayOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
val takenArray = originalArray.take(3) // 앞에서부터 3개의 요소 선택
println(takenArray.joinToString()) // 출력: 1, 2, 3
}
drop()
함수 사용:
fun main() {
val originalArray = arrayOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
val droppedArray = originalArray.drop(4) // 앞에서부터 4개의 요소 제외
println(droppedArray.joinToString()) // 출력: 5, 6, 7, 8, 9, 10
}
subList()
함수 사용:
subList()
함수는 Kotlin의 리스트에서 원하는 범위의 요소를 선택하여 새로운 하위 리스트(sublist)를 생성하는 함수입니다. 이 함수는 리스트의 특정 범위를 지정하여 해당 범위의 요소들로 새로운 리스트를 만들어 반환합니다.
아래는 subList()
함수를 사용한 예시 코드입니다:
fun main() {
val originalList = listOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
val subList = originalList.subList(2, 6) // 인덱스 2부터 5까지의 요소로 하위 리스트 생성
println(subList.joinToString()) // 출력: 3, 4, 5, 6
}
위의 코드에서 subList(2, 6)
는 원본 리스트에서 인덱스 2부터 5까지의 요소들을 선택하여 하위 리스트를 생성합니다. 이렇게 생성된 하위 리스트는 새로운 리스트로, 원본 리스트와는 별개의 객체입니다.
주의할 점은 subList()
로 생성한 하위 리스트는 원본 리스트의 일부분에 대한 뷰(view)를 제공합니다. 따라서 하위 리스트를 수정하면 원본 리스트도 영향을 받게 됩니다. 만약 수정된 하위 리스트를 원본 리스트와 독립적으로 사용하려면, 하위 리스트를 새로운 리스트로 변환하여 사용하거나 toList()
함수를 사용하여 무결성을 유지할 수 있습니다.
728x90
'코테 > 코딩테스트 대비 Kotlin' 카테고리의 다른 글
Kotlin 조합(Combination) (0) | 2023.08.20 |
---|---|
Kotlin 두 개의 배열의 요소가 같은지 아는 방법 (0) | 2023.08.19 |
Kotlin에서 배열을 n개로 나누기 (0) | 2023.08.19 |
Kotlin 배열 정렬 (0) | 2023.08.19 |
Kotlin 약수 구하기 (0) | 2023.08.19 |