아삭아삭 iOS 개발

[Swift 독학] 패스트캠퍼스 챌린지 9일차_컬렉션 타입 본문

Swift

[Swift 독학] 패스트캠퍼스 챌린지 9일차_컬렉션 타입

바닐라머스크 2022. 2. 1. 23:00

 

■ 컬렉션 타입

- 콜렉션의 값을 저장하기 위한 데이터들의 집합 묶음

- Array, Dictionary, Set 3개의 타입 종류가 있음

- swift 기본 데이터 타입은 모두 Hashable (, 해쉬 값을 계산할 있는 방법을 타입이 제공)

 

■ 컬렉션 타입 3종류

1) Array
- 같은 데이터 타입의 값들을 순서대로 저장하는 리스트 컬렉션
- 축약형으로 선언이 가능
- 여러가지 리터럴 문법을 활용할 수 있어서 표현 방법이 다양
- []로 묶어서 Array타입임을 표현 가능
- var를 사용하여 Array를 선언하면 멤버 추가, 삭제, 교체, 수 확인, 포함여부 확인 등 가능
- let을 사용하여 Array를 선언하면 멤버 추가나 삭제 불가능
- someArray.isEmpty 프로퍼티로 비어있는 Array인지 확인 가능
- someArray.count 프로퍼티로 Array의 요소 수량 확인 가능

 

EX) var numbers: Array<Int> = Array<Int>() 

 


2) Dictionary
- 데이터 타입의 값들을 순서없이 (key) (value) 쌍으로 저장하는 컬렉션
- (key) 데이터 중복을 허락하지 않음
- 축약형으로 선언이 가능
- 존재하지 않는 키로 접근할 경우, nil 반환 (오류발생 X)
- var 사용하여 Dictionary 선언하면 키에 해당하는 할당, 변경, 삭제 가능
- let 사용하여 Dictionary 선언하면 변경 불가능
- someDictionary.isEmpty 프로퍼티로 비어있는 Dictionary인지 확인 가능
- someDictionary.count 프로퍼티로 Dictionary 요소 수량 확인 가능

EX) var 변수명: Dictionary<key의 타입, value의 타입> = Dictionary<String, Int>()
EX) var dic: [String: Int] = [:] // 축약된 형태

 


3) Set
- 같은 데이터 타입의 값을 순서없이 저장하는 리스트 컬렉션
  : 순서가 없기 때문에 요소를 삭제할 , 순서가 아닌 저장된 값으로 삭제
- 데이터 중복을 허락하지 않음
- let 사용하여 Array 선언하면 멤버 추가나 삭제 불가능
- [] 묶어서 Set타입임을 표현 가능
- 축약형 선언이 별도로 없음 : 키워드 Set<타입이름>
- 집합연산에 많이 활용됨 (합집함, 차집합, 교집합 )
- var 사용하여 Set 선언하면 ~가능
- let 사용하여 Set 선언하면 ~불가능
- someSet.isEmpty 프로퍼티로 비어있는 Set인지 확인 가능
- some Set.count 프로퍼티로 Set 요소 수량 확인 가능
- some Set.contains 프로퍼티로 Set 포함여부 확인 가능

 

EX) set: Set = Set<Int>()

 

 

 

■ fast campus강의  참조자료
[1] https://blog.yagom.net/546/

[2] https://alohalimi.tistory.com/entry/SWIFT-컬렉션형-배열-Array
https://alohalimi.tistory.com/entry/SWIFT-컬렉션형-딕셔너리Dictionary

https://alohalimi.tistory.com/entry/SWIFT-컬렉션형-세트Set

[3] https://bbiguduk.gitbook.io/swift/language-guide-1/collection-types

 

https://bit.ly/37BpXiC

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

 

포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.