엔지니어 규의 IT 프로그래밍 다이어리

[Kotlin] 19. 리스트 본문

프로그래밍 언어/코틀린

[Kotlin] 19. 리스트

엔지니어 규 2022. 5. 29. 11:32
728x90

리스트

 

 

리스트는 '데이터를 모아 관리' 하는 컬렉션 클래스르 상속받는 서브클래스중가장 단순한 형태로,

 

여러개의 데이터를 원하는 순서로 넣어 관리하는 형태이다. 

 

리스트에는 두가지가 있는데  그냥 List<out T>MutableList<T> 가 있는데,

두 클래스의 차이는  List<out T> 같은 경우 생성시에 넣은 객체를 대체,추가,삭제 할 수 없으며

MutableList<T>는  생성시에 넣넣은 객체를 대체, 추가, 삭제가 가능하기 때문에 상황에 따라 맞춰 이를 선택하면 된다.

 

리스트를 만들떄는 전용함수인 listOf 나 mutableListOf 를쓰고, 괄호안에 리스트에 담을 데이터 요소를 나열하면 된다.

ex :  listOf(1,2,3)

         mutableListOf("A","B","C")

 

 

 

또한 MutableList 에서는 요소의 추가, 삭제를 위한 함수 외에도 요소를 섞거나 정렬하는 함수도 사용이 가능하며,

특정위치의 요소를 다른 요소로 대체가 가능하다. 

 

아래의 코드를 살펴보자

fun main(){

    val a= listOf("사과", "딸기", "배")
    println(a[1])    //딸기

    for (fruit in a){
        println("${fruit}:")
        /*
        사과:
        딸기:
        배:  
        */

    }
    println()

    val b = mutableListOf(6,3,1)
    println(b)  //[6, 3, 1]

    b.add(4)
    println(b)  // [6, 3, 1, 4]

    b.add(2,8)
    println(b) //[6, 3, 8, 1, 4]

    b.removeAt(1)
    println(b) //[6, 8, 1, 4]

    b.shuffle()
    println(b)  //[6, 4, 1, 8]  , 무작위로 순서변경됨

    b.sort()
    println(b)  //[1, 4, 6, 8]


}

위의 코드를 보면 추가, 삽입, 삭제, 셔플, 정렬이 잘 실행된것을 확인할 수 있다.

 

리스트는 목록이 필요한 모든 코드에서 가장 편리하게 사용할 수 있는 컬렉션이다.

 

 

 

728x90
Comments