[코틀린 Kotlin] Lists, Set, Maps

배열은 사용 할 때는 미리 크기를 정해서 사용 했었습니다. 집어넣어야 하는 데이터가 몇개 인지 모를 때는 Lists를 사용 합니다.

 

val myMusician = ArrayList<String>()
myMusician.add("Micle")
myMusician.add("Ann")
myMusician.add("Billy")
myMusician.add("Kate")

 

배열에서는 특정 인덱스에 접근 하려면 [] 안에 인덱스를 집어넣어 접근 하였습니다. 그러면 List에서는 어떻게 해야 할까요? List에서는 해당 작업을 위해 여러 함수를 제공 해 줍니다.

 

//데이터를 갱신
myMusician.add(1, "Smith");

//데이터를 가져옴
println(myMusician.get(1))

 

가지고 있는 리스트에서 중복을 허용하고 싶지 않을 때는 어떤 리스트를 사용해야 할까요? 이럴 때는 Set이라는 자료구조를 사용하면 됩니다. Set을 사용하시면 중복 없이 데이터를 관리 하실 수 있습니다.

 

val mySet = HashSet<String>()

mySet.add("SetTest")
mySet.add("SetTest")
mySet.add("SetTest")
mySet.add("SetTest")

println(mySet.size)

 

위의 코드의 결과는 1입니다.

Set은 중복을 허용하지 않기 때문에 값은 값을 여러 개 집어넣어도 데이터는 오직 하나만 저장이 됩니다.

 

다음은 index가 아닌 Key를 통해 Value에 접근하는 Map에 대해서 알아 보겠습니다. 이름을 Key 그리고 시험 점수를 Value로 한다고 치면 아래와 같이 Map를 구성할 수 있습니다. 

 

val myMap = HashMap<String, String>()

myMap.put("James", 80)
myMap.put("Harry", 90)
myMap.put("Ron", 30)

 

댓글



Designed by JB FACTORY