컬레션 - list

Anna·2024년 6월 17일
0

코틀린

목록 보기
27/28
post-thumbnail

베열을 크기가 정해지면 변경할 수 없지만, LIst는 추가, 삭제 등이 가능
listOf 불변형 리스트 생성
mutableListOf 가변형 리스트 생성 ()
emptyList 비어있는 불변형 리스트를 생성
listOfNotNull null을 제외한 나머지만으로 리스트를 생성

👀 불변형&가변형

  • 불변형에 비해 메모리 많이 잡아 먹음, 속도 좀 느림

  • 불변형 컬렉션 객체 사용 추천

    • 실제로 데이터 조작하는 작업을 할 때 가변형으로 새로 만들어서 작업한 후
    • 불변형을 새로 만들어서 사용하는 것을 추천

listOf

val list1 = listOf(10, 20, 30, 40, 50)
val list2 = listOf("str1", "str2", "str3", "str4")

println("list1 : ${list1}")  //list1 : [10, 20, 30, 40, 50]
println("list2 : ${list2}")  //list2 : [str1, str2, str3, str4]

👀 제네릭
객체 생성할 때 데이터 지정해주지 않으면
→ 제네릭 명시 필수 val lsit1 = listOf<Int>()

데이터 지정해주면 제네릭 생략 가능
→ 알아서 자료형 추론


mutableListOf

val list3 = mutableListOf<Int>()   
val list4 = mutableListOf("str1", "str2", "str3")
println("list3 : ${list3}")  //list3 : []
println("lsit4 : ${list4}")  //lsit4 : [str1, str2, str3]

👀 mutableListOf
나중에 값을 추가 가능
-> 아무것도 가지고 있지 않는 리스트를 만드는 경우도 굉장히 많음


emptyList, listOfNotNull

val list5 = emptyList<String>() //비어져 있는 불변형 -> 무의미!!!

val list6 = listOfNotNull(10, 20, 30, null, 40, null)
println("list6 : ${list6}")  //list6 : [10, 20, 30, 40]

👀 null
그냥 리스트 → null포함
listOfNotNull → null빼고 리스트 만듬


반복문

for (item in list1)
{
	println("list1 for : $item")
}

//list1 for : 10
//list1 for : 20
//list1 for : 30
//list1 for : 40
//list1 for : 50

0개의 댓글