본문 바로가기
🍎 Swift/iOS 문법 노트

[🍎 Swift 문법] array & dictionary & set

by 솔비님 2024. 5. 8.

01. array

  • 여러 데이터를 순서대로 담아 놓는 변수
  • []을 통해서 선언
  • 개별 아이템 접근 시 index 를 이용함
    - index는 0부터 시작
    - 순서에서 벗어난 index를 요청하면 크래시 발생
let yoo = "유재석"
let ji = "지석진"
let ha = "하하"
let so = "전소민"
let song = "송지효"
let kim = "김종국"

let runningMans = [yoo, ji, ha, so, song, kim]
// → ["유재석", "지석진", "하하", "전소민", "송지효", "김종국"]

runningManss[0] // → 유재석
runningManss[1] // → 지석진
runningManss[5] // → 김종국
runningManss[7] // → error

 

 

💡 비어있는 배열 초기화

: Int 타입의 배열을 받을 깡통을 만드는 것

var emptyArray: [Int] = [] // → []
emptyArray = [Int]() // → []

 


 

02. dictionary

  • 여러 데이터를 키와 값을 형태로 담아 놓는 변수
  • 값을 접을할 때는 키를 통해 접근함
    - 접근한 키의 값이 없으면 nil
    - 접근한 키의 값이 있으면 해당 값을 전달
let languageCode: [String: String] = ]
    "한국" : "ko",
    "미국" : "en",
    "일본" : "ja",
]

languageCode["한국"] // → "ko"
languageCode["베트남"] // → nil

 

 

💡 비어있는 딕셔너리 초기화

var emptyDic: [String: Any] = [:] // → [:]
emptyDic = [String: Any]() // → [:]

 

 


 

03. set

  • 여러 데이터를 순서 상관없이, 그리고 중복없이 담아 놓은 변수
  • array 와의 차이점
    - 순서가 없다(랜덤 순서다)
    - 중복 데이터를 들고있지 않는다
//기본 구조
var primes: Set<Int> = [2, 3, 5, 7]

// Set<Int> 제외 시 array로 명시됨
var primes: = [2, 3, 5, 7]

//중복된 데이터를 넣으면 자동으로 무시됨
var evens = Set<Int>([2, 4, 6, 8, 2, 4])

 

 

💡 비어있는 Set 초기화

var emptySet: Set<Int> = [] // Set<Int>()로도 표현
emptySet = Set<Int>()

 

 

+ 또 다른 설명

 

Set 타입의 문법은 Set<SomeType>로 작성되며, 다음과 같이 초기화 할 수 있습니다.

var strs = Set<String>()

 

만약 이미 초기화가 되어 있다면, 다음과 같이 빈 Set 객체로 만들 수 있습니다.

strs = []


값이 들어간 상태로 초기화 한다면 다음과 같이 사용할 수 있습니다.

strs = Set(["A", "B", "C", "D"])


Set 객체에 insert, ‘remove’ 메소드를 통해 추가, 삭제할 수 있습니다.

strs.insert("E")
strs.remove("B")	// "B"


특정 항목이 포함되어 있는지 contains 메소드로 확인할 수 있습니다.

strs.contains("C") // true


Set 객체에 count, isEmpty 속성를 통해 크기를 알 수 있습니다.

strs.isEmpty 	// false
strs.count 	// 4


For Loops를 통해 Set 객체의 항목을 하나씩 얻을 수 있습니다.

for str in strs {
  println(str)
}

 

 


참고자료

1.  https://minsone.github.io/mac/ios/swift-set-type

 

[Swift]Set 정리

이번에 업데이트 된 Swift 1.2에서는 Set 타입이 추가되었습니다. 따라서 Set을 정리해볼려고 합니다. 더 자세한 내용을 보길 원하시면 Apple Document를 참고하시기 바랍니다. Set Swift의 Set 타입은 NSSet

minsone.github.io

2.  패스트캠퍼스 강의