Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- AI
- kotlin
- PETERICA
- mysql 튜닝
- 오블완
- Java
- 코틀린 코루틴의 정석
- Pinpoint
- MySQL
- CKA
- AWS EKS
- kotlin coroutine
- Spring
- 정보처리기사실기 기출문제
- 정보처리기사 실기 기출문제
- APM
- kotlin querydsl
- CKA 기출문제
- kotlin spring
- IntelliJ
- CloudWatch
- Kubernetes
- minikube
- 공부
- aws
- Elasticsearch
- 기록으로 실력을 쌓자
- 티스토리챌린지
- 정보처리기사 실기
- Linux
Archives
- Today
- Total
피터의 개발이야기
[Kotlin] MutableList 기능 설명 본문
반응형
ㅁ 들어가며
ㅇ MutableList는 Kotlin에서 동적으로 요소를 추가, 삭제, 수정할 수 있는 리스트 타입이다.
ㅇ 읽기 전용인 List와 달리 MutableList는 변경 가능한 리스트를 다룰 때 사용된다.
ㅇ 이 글에서는 MutableList의 주요 기능과 사용법을 알아본다.
ㅁ MutableList 생성
val list1 = mutableListOf(1, 2, 3)
val list2 = mutableListOf<String>()
val list3 = MutableList(5) { it * 2 } // [0,2,4,6,8]
val list4 = (1..50).toMutableList()
val list5 = MutableList<Int>(5, { i -> i}) // [0,1,2,3,4]
ㅇ MutableList 생성하기 위해서는 위의 방법이 있다.
ㅁ MutableList 추가
val list = mutableListOf(1, 2, 3)
list.add(4) // [1, 2, 3, 4]
list.add(0, 0) // [0, 1, 2, 3, 4]
list.addAll(listOf(5, 6)) // [0, 1, 2, 3, 4, 5, 6]
ㅇ add(): 리스트 끝에 요소 추가
ㅇ add(index, element): 특정 위치에 요소 추가
ㅇ addAll(): 다른 컬렉션의 모든 요소 추가
ㅁ MutableList 제거
val list = mutableListOf(1, 2, 3, 4, 5)
list.remove(3) // [1, 2, 4, 5]
list.removeAt(0) // [2, 4, 5]
list.clear() // []
ㅇ remove(): 특정 요소 제거
ㅇ removeAt(): 특정 인덱스의 요소 제거
ㅇ clear(): 모든 요소 제거
ㅁ MutableList 수정
val list = mutableListOf(1, 2, 3)
list[1] = 20 // [1, 20, 3]
ㅇ 인덱스를 사용하여 요소를 직접 수정할 수 있다.
ㅁ MutableList루프
val list = mutableListOf(1, 2, 3)
for (item in list) {
println(item)
}
list.forEach { println(it) }
ㅇ for, forEach를 사용하여 리스트를 순회할 수 있다
ㅁ 유용한 함수들
val list = mutableListOf(1, 2, 3, 4, 5)
list.retainAll(listOf(1, 2, 3)) // [1, 2, 3]
list.removeAll(listOf(1, 2)) // [3, 4, 5]
val subList = list.subList(0, 2) // [1, 2]
ㅇ retainAll(): 주어진 컬렉션에 포함된 요소만 남기고 나머지 제거
ㅇ removeAll(): 주어진 컬렉션에 포함된 모든 요소 제거
ㅇ subList(): 리스트의 일부분을 반환
ㅁ val vs var
val list1 = mutableListOf(1, 2, 3)
list1.add(4) // 가능
// list1 = mutableListOf(5, 6) // 컴파일 에러
var list2 = mutableListOf(1, 2, 3)
list2.add(4) // 가능
list2 = mutableListOf(5, 6) // 가능
ㅇ MutableList를 선언할 때 val로 선언해도 리스트의 내용을 변경할 수 있다.
ㅇ 하지만 var로 선언하면 리스트 자체를 다른 리스트로 재할당할 수 있다.
ㅁ 마무리
MutableList는 동적으로 변경 가능한 리스트가 필요할 때 유용하게 사용할 수 있다. 하지만 불필요한 변경을 방지하고 코드의 안정성을 높이기 위해, 가능한 경우 불변의 List를 사용하는 것이 좋다.
글 작성하며 테스트 했던 소스
ㅁ 함께 보면 좋은 사이트
반응형
'Programming > Kotlin' 카테고리의 다른 글
[Kotlin] List 사용법 정리 (0) | 2024.07.12 |
---|---|
[Kotlin] File들을 코드별 폴더로 압축하기 (0) | 2024.07.11 |
[Kotlin] Map 다양한 사용법 (1) | 2024.07.09 |
[Kotlin] 코틀린 MapStruct 사용방법 (0) | 2024.07.08 |
[Ktor] Kotlin + Ktor + Eposed 환경에서 MySQL 연동하기 (0) | 2024.07.04 |
Comments