본문 바로가기
코틀린 문법

12. 리스트

by 농농씨 2023. 5. 11.

참조:유튜브 디모의 코틀린

코드테스트사이트:play.kotlinlang.org

*J,K,L로도 방향키<-,스페이스바,방향키->의 역할을 할 수 있음

 

//리스트(List)
//:데이터를 코드에서 지정한 순서대로 저장함
// 데이터를 모아 관리하는 Collection클래스를 상속받는
// 서브클래스들(List,Set,Map)중에서 가장 단순한 형태로,
// 여러개의 데이터를 원하는 순서로 넣어 관리하는 형태
// List<out T>, MutableList<T> 두종류의 리스트 있다.
// mutable(변할 수 있는)
// List<out T>: 생성시에 넣은 객체를 대체,추가,삭제 할 수 없음
// MutableList<T>: 생성시에 넣은 객체를 대체,추가,삭제가 가능함
//리스트를 만들 때는 전용 함수인
// listOf(1,2,3)나 mutableListOf("A","B","C")를 쓰고
// 괄호 안에 리스트 안에 담을 데이터 요소를 나열하면 됨
//또한, mutableList에서는 
// 요소의 추가 add(데이터)
//  add(인덱스,데이터)
//   삭제 remove(데이터)
//     removeAt(인덱스)    를 위한 데이터 외에도
//    무작위 섞기 shuffle()
//        정렬 sort()  요소를 섞거나 정렬하는 등의 함수도 사용할수있으며
//  list[인덱스]=데이터   당연히 특정위치의 요소를 다른데이터로 대체도 가능
//실습시간~


fun main(){
    
    val a = listOf("사과","딸기","배")
    //리스트 만들어 사과,딸기,배 넣고 이 리스트를 변수a에 할당
    println(a[1])//특정 인덱스의 요소를 출력(배열과 사용방법 동일함)
    
    //리스트의 모든 요소 출력해보자
   for(fruit in a)//for문에서 키워드 in을 사용하면
    //리스트 a에서 요소를 하나씩 꺼내 fruit에 할당해줌
    {
        print("${fruit}:")//리스트에서 하나씩 꺼내서 출력
    }
    
    println()//한줄 떼고 출력하려고 빈 println 넣음
    
    val b = mutableListOf(6,3,1)//mutablelist만들고 데이터 넣어서
    //변수 b에 할당함
    println(b) //b를 그대로 출력  
    
    b.add(4)//add함수로 리스트에 '4'추가
    println(b)//다시 리스트b 그대로 출력해서 추가 정상적으로됐는지확인
    
    b.add(2,8)//이번엔 인덱스2번자리에 8 삽입
    println(b)//다시 리스트b 출력
    
    b.removeAt(1)//remove함수로 리스트b의 인덱스1번 요소 삭제
    println(b)
    
    b.shuffle()//무작위 섞기 함수 
    println(b)
    
    b.sort()
    println(b)
}

//리스트는 목록이 필요한 모든 코드에서 가장 편리하게 사용할 수 있는
//컬렉션이므로 기억해두고 꼭 사용해보세요~ 네~