코틀린에서 가변 배열은 MutableList 인터페이스를 구현하는 컬렉션으로 표현됩니다. 가변 배열은 크기가 동적으로 변경될 수 있으며, 요소를 추가하거나 삭제하는 등의 조작이 가능합니다. 여러 가지 가변 배열을 사용할 수 있지만, 여기서는 MutableList를 중심으로 설명하겠습니다.
1. 가변 리스트 생성
mutableListOf 함수를 사용하여 가변 리스트를 생성할 수 있습니다.
val numbers: MutableList<Int> = mutableListOf(1, 2, 3, 4, 5)
위의 코드에서 numbers는 MutableList 타입의 가변 리스트로 선언되었고, mutableListOf 함수를 사용하여 초기값을 설정했습니다.
2. 요소 추가 및 삭제
- 요소 추가 (add 함수)
numbers.add(6)
// numbers: [1, 2, 3, 4, 5, 6]
- 특정 위치에 요소 추가 (add 함수와 인덱스)
numbers.add(2, 7)
// numbers: [1, 2, 7, 3, 4, 5, 6]
- 요소 삭제 (remove 함수)
numbers.remove(4)
// numbers: [1, 2, 7, 3, 5, 6]
3. 요소 변경
가변 리스트는 인덱스를 사용하여 특정 위치의 요소를 변경할 수 있습니다.
numbers[1] = 10
// numbers: [1, 10, 7, 3, 5, 6]
4. 리스트 결합
addAll 함수를 사용하여 두 가변 리스트를 결합할 수 있습니다.
val moreNumbers: MutableList<Int> = mutableListOf(8, 9, 10)
numbers.addAll(moreNumbers)
// numbers: [1, 10, 7, 3, 5, 6, 8, 9, 10]
5. 리스트 정렬
sort 함수를 사용하여 리스트를 정렬할 수 있습니다.
numbers.sort()
// numbers: [1, 3, 5, 6, 7, 8, 9, 10]
6. 가변 리스트에서 불변 리스트로 변환
toList 함수를 사용하여 가변 리스트를 불변 리스트로 변환할 수 있습니다.
val immutableList: List<Int> = numbers.toList()
7. 기타 유용한 함수
- clear: 리스트의 모든 요소를 제거합니다.
- contains: 특정 요소가 리스트에 포함되어 있는지 확인합니다.
- indexOf: 특정 요소의 인덱스를 반환합니다.
- removeAt: 특정 인덱스의 요소를 제거합니다.
numbers.clear()
numbers.contains(5)
numbers.indexOf(7)
numbers.removeAt(2)
가변 리스트는 동적으로 크기가 조절되며, 데이터를 효과적으로 조작할 수 있는 강력한 자료구조입니다. 관련된 함수와 속성을 활용하여 데이터 조작을 편리하게 할 수 있습니다.
With ChatGPT
'Kotlin > 포스팅' 카테고리의 다른 글
코틀린 함수 (0) | 2023.12.10 |
---|---|
코틀린 배열 사용 (0) | 2023.12.10 |
코틀린 배열 정의 (0) | 2023.12.10 |
코틀린 문자열 연산자 (0) | 2023.12.10 |
코틀린 문자열 템플릿 (0) | 2023.12.10 |