띠오니 개발자 성장일지
Published 2023. 7. 4. 12:58
[Swift] 3. 컬렉션 타입 Study/iOS,Swift
반응형

 

데이터들의 집합 묶음

  • Array : 같은 데이터 타입의 값들을 순서대로 지정하는 리스트
  • Dictionary : 순서없이 Key, Value 한 쌍으로 데이터를 저장하는 컬렉션 타입
  • Set : 같은 데이터 타입의 값을 순서없이 저장하는 리스트, 순서보장X, 중복값 허용X

 

 

같은 데이터 타입의 값들을 순서대로 지정하는 리스트

 

기본적인 Array 사용방법

  • 데이터 마지막에 추가 : append()
  • 데이터 삽입 : insert(value, at : index)
  • 데이터 삭제 : remove(at : index)
  • 데이터 조회 : 변수명[index]
<swift />
var numbers: Array<Int> = Array<Int>() // Array 생성 // 데이터 추가 : append() numbers.append(1) numbers.append(2) numbers.append(3) // 데이터 값 접근하기 numbers[0] // 1 numbers[1] // 2 numbers[2] // 3 // 중간에 데이터 삽입 : insert(value, at:index) numbers.insert(4, at:2) numbers // [1, 2, 4, 3] // 중간에 데이터 삭제 : remove(at:index) numbers.remove(at:1) numbers // [1, 4, 3]
 

 

다른 방법으로도 Array를 생성할 수 있다.

<swift />
var names = [String]() var names: [String] = [] // 보통 이렇게 축약된 문법으로 생성함
 

 

 

순서없이 Key, Value 한 쌍으로 데이터를 저장하는 컬렉션 타입

  • 값 할당/변경하기 : 변수명["Key명"] = value
  • 값 삭제하기 : 변수명.removeValue(forKey : Key명)

 

<code />
// Dictionary 초기 생성하기 var dic1: Dictionary<String, Int> = Dictionary<String, Int>() var dic2: [String: Int] = [:] // 축약된 형태 var dic3: [String: Int] = ["Jiwon" : 1] // 바로 초기화 가능 // 값 할당하기 dic3["김앵지"] = 2 dic3["고양이"] = 7 dic3 // ["고양이":7, "Jiwon":1, "김앵지":2] 순서가 보장되지 않음 // 값 변경 하기 dic3["김앵지"] = 4 dic3["홍길동"] = 0 dic3 // ["김앵지":4, "고양이":7, "Jiwon":1, "홍길동":0] // 값 삭제하기 : removeValue(forKey: keyValue) dic3.removeValue(forKey: "Jiwon") dic3 //["홍길동":0, "김앵지":4, "고양이":7]
 

 

 

같은 데이터 타입의 값을 순서없이 저장하는 리스트, 순서보장X, 중복값 허용X

  • 값 추가 : insert(value)
  • 값 삭제 : remove(value)
<code />
var set: Set = Set<Int>() // 축약형 선언이 따로 없다. // 값 추가 : insert(value) set.insert(10) set.insert(20) set.insert(30) set.insert(30) set // [20, 30, 10] // 값 삭제 : remove(value) set.remove(10) set // [30, 20]
 

 

 

 

반응형

'Study > iOS,Swift' 카테고리의 다른 글

iOS Hugging Property  (0) 2023.07.13
[Swift] 5. 조건문 (if~else문, switch문)  (0) 2023.07.11
[Swift] 4. 함수(Function)  (0) 2023.07.11
[Swift] 2. 상수와 변수, 데이터 타입  (0) 2023.07.04
[Swift] 1. xcode 설치 및 Playground  (0) 2023.07.04
profile

띠오니 개발자 성장일지

@띠오니

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!