배열(Array), 세트(Set), 딕셔너리(Dictionary)

정승호·2022년 5월 30일
0

컬렉션 타입이란? (Collection Type)

  • 데이터들의 집합 이라 할 수 있습니다.
  • 지정된 (데이터)타입을 하나로 묶은 형태입니다.
    지정된 타입이라고 하는 이유는 Swift에서는 컬렉션 타입들이 모두 제네릭 컬렉션(Generic Collection)으로 구현되어 있기 때문입니다.

- Swift에는 세 가지 컬렉션 타입이 있습니다.

  • 배열(Array)
  • 세트(set)
  • 딕셔너리(Dictionary)

배열 (Array)

  • 같은 데이터 타입의 값들을 순서대로 저장하는 리스트 입니다.

식당의 대기명단을 떠올려 보겠습니다. 대기자 순서대로 번호와 이름을 적습니다.

  • 배열은 똑같은 값(중복 값) 을 저장할 수 있습니다. 순서가 정해져 있어서 구분할 수 있기 때문입니다.

대기명단에서 이름이 같아도 대기번호가 있기 때문에 구분할 수 있는것과 같습니다.

마지막 줄에 ["배열이", "배열이"] 라고 쓰면 셋째 다시 나옵니다.
대기명단에 번호만 쓰고 이름을 안쓰면 밥을 못먹습니다.

** .isEmpty를 모르신다면..
https://0urtrees.tistory.com/121

세트 (Set)

  • 같은 데이터 타입의 값들을 순서없이 저장하는 리스트 입니다.
    순서가 없기 때문에 서로 같은 값들을 구분할 수 없습니다. (중복 값은 허용X)
    순서가 중요하지않거나, 세트에 저장된 각 값들이 유일한 값일 때 사용합니다.

로또 번호가 적힌 공들을 담아 놓은통을 떠올려 보겠습니다.
공들은 순서가 없이 담겨있고, 중복된 숫자또한 없습니다.

  • 집합의 연산이 가능합니다.
    밑의 두장의 캡쳐본을 2분만 쳐다보면 이해됩니다.

** Swift의 타입추론 기능을 이용해서 var 변수명 = ["값1", "값2"] 의 형태로 사용하면 배열로 인식합니다. 그래서 세트(Set)는 축약형이 없습니다.

딕셔너리 (Dictionary)

  • 중복되지 않는 고유값을 가진
    키(Key) - 값(Value)한 쌍으로 데이터를 저장하는 컬렉션 타입입니다.

영한사전을 떠올려보겠습니다. Apple(Key)을 입력, 사과(Value)가 나옵니다.
Apple을 입력했다고 밥이라는 뜻이 나오진 않습니다.

참고자료

https://noahlogs.tistory.com/14

https://docs.swift.org/swift-book/LanguageGuide/CollectionTypes.html

0개의 댓글