Programming language/Kotlin

코틀린 컬렉션 타입

Think-About 2022. 8. 13. 05:40

코틀린 컬렉션 타입

컬렉션 타입은 여러 개의 값을 표현하는 것입니다.
컬렉션 타입에 해당하는 Array, List, Set, Map에 대하여 정리하고자 합니다.

코틀린 List Set Map
코틀린 List Set Map

이전 글들을 통해 코틀린 변수, 함수 등 기본적인 내용들을 쭉 다루었습니다.
꼭 읽고 오시길 추천드립니다.

 

'프로그래밍 언어/Kotlin' 카테고리의 글 목록

지식을 공유하고 같이 생각해보는 블로그입니다. 전문 지식 뿐만 아니라 많은 분들께 도움 되는 지식 공유하는 블로그입니다.

think-about.tistory.com


코틀린 Array

코틀린에서 Array는 클래스이며 코틀린의 배열을 뜻 합니다.
클래스이므로 생성자는 어떻게 생겼는지 알아봐야겠죠?

<init>(size: Int, init: (Int) -> T)

첫 번째 매개변수는 배열의 크기를, 두 번째 매개변수는 초깃값을 지정하는 함수입니다.
만약에 크기가 10이고 모든 값을 0으로 초기화하고 1부터 10까지로 값을 변경해 봅시다.
늘 그랬듯이 코틀린 플레이그라운드에서 꼭 실습하면서 읽으셔야 합니다.

코틀린 Array 초기화 및 변경
코틀린 Array 초기화 및 변경

배열의 데이터 접근을 위해서 대괄호( [ ] )를 사용하는 예시인데요.
우리는 이전에 함수를 배웠습니다. 그럼 함수를 사용하는 방법도 살펴봅니다.

코틀린 Array 함수를 이용한 데이터 접근
코틀린 Array 함수를 이용한 데이터 접근

Array 클래스에는 set() 함수와 get() 함수가 정의되어 있습니다.
이를 사용한 예시이며, set()의 경우 첫 번째 파라미터는 인덱스(몇 번째를 의미), 두 번째 파라미터는 값을 의미합니다.
get()의 경우 파라미터로 인덱스를 제시하면 그 인덱스에 해당하는 값을 가져옵니다.

코틀린에 arrayOf()라는 함수가 정의되어 있습니다.

이를 활용한다면 배열을 선언할 때 값을 할당해 버릴 수도 있습니다.

코틀린 arrayOf

위의 예시는 크기가 5인 Int 배열을 만들고 값을 1, 2, 3, 4, 5로 할당하라는 명령입니다.


코틀린 가변 클래스와 불변 클래스

앞으로 설명할 List, Set, Map은 가변 클래스와 불변 클래스로 나뉩니다.
가변 클래스는 데이터를 변경할 수 있는 타입이며,
불변 클래스는 데이터를 변경할 수 없는 타입입니다.
가변 클래스는 size(), get(), add(), set() 함수를 제공하지만,
불변 클래스는 접근만 할 수 있는 size(), get() 함수만 제공합니다.

코틀린 List Set

리스트는 순서가 있는 데이터들의 집합으로 중복을 허용하는 것입니다.
리스트 또한 클래스이며 가변 클래스와 불변 클래스로 나뉩니다.
가변 리스트를 사용하는 방법은 다음과 같습니다.

코틀린 가변 리스트
코틀린 가변 리스트

데이터의 타입이 Int인 가변 리스트를 정의하고 0번지에 10을 추가하고,
1번지에 20이라는 값을 추가한 예시입니다.
여기서 의심을 해보셔야 합니다.
array1[1] = 20이라는 부분이 올바른지 생각해 보시는 것을 추천드립니다.


불변 리스트를 사용하는 방법은 arrayOf와 거의 동일합니다.

코틀린 불변 리스트
코틀린 불변 리스트

한 가지 팁을 알려드리자면 String template를 사용하면 리스트의 모든 값을 한 번에 출력해 볼 수 있습니다.


Set은 리스트와 거의 동일하지만 데이터에 순서가 없으며 중복을 허용하지 않습니다.
List를 이해하셨다면 Set도 이해가 되셨을 겁니다.

코틀린 Map

코틀린 Map은 Key와 Value로 이루어진 쌍의 데이터 컬렉션 타입입니다.
만약 파이썬에 대한 경험이 있으신 분은 dictionary를 떠올리시면 됩니다.

Map의 값을 표현하는 방법은 두 가지가 있습니다.

1. Pair를 이용한 방법
Pair(키, 값) 형태로 사용합니다.
Key는 String, Value는 Int 타입을 가지는 Map의 값을 Pair 표현하는 예시입니다.

코틀린 Pair 값 표현
코틀린 Pair 값 표현

2. 키 to 값 표현을 이용한 방법
말 그대로 키 to 값 형태로 적으면 됩니다. 하지만 가독성은 좋지 않아서 개인적으로 추천드리지는 않습니다.
마찬가지로 Key는 String, Value는 Int 타입을 가지는 Map의 값을 Pair 표현하는 예시입니다.

코틀린 key to value 예시
코틀린 key to value 예시


이번 글도 간단했나요?
드디어! 코틀린의 아주 기본적인 문법이 끝이 났습니다.
다음 글에 코틀린 클래스에 대하여 알아보도록 하겠습니다.

'Programming language > Kotlin' 카테고리의 다른 글

[코틀린 OOP #1] - 클래스와 생성자  (0) 2022.08.16
코틀린 반복문  (0) 2022.08.13
코틀린 함수 매개변수  (2) 2022.08.05
코틀린 함수 값 반환하기  (2) 2022.08.04
코틀린 함수 정의 및 호출하기  (0) 2022.08.03