0. 고고띵,,
아이고 손목아
1.
- 옵셔널 타입 : 값이 없는 상태인(nil)을 포함하는 타입
var a: Int?
a = 5
// -> 출력 시 5가 아니라 Optional(5) 출력됨
옵셔널 타입을 사용하는 이유는 값이 없는 경우에 부르게 되면 에러가 발생하는데
옵셔널 타입으로 이 에러를 방지하기 위해 (nil의 존재로)
- 옵셔널 타입을 추출하는 방법 (->논 옵셔널로)
//강제 추출 -> 값이 없는 경우 에러 발생함
num!
// nil인지 확인 후 강제 추출
if num != nil {
print(num!)
}
// 옵셔널 바인딩 ⭐️ -> 변수나 상수에 바인딩(대입) 된다면!, nil이면 안되기 때문!
//if let 바인딩
if let x = num {
print(x)
}
//guard let 바인딩
guard let x = num else{ return }
print("x")
//Nil-Coalescing -> ?? 뒤의 부분이 값이 없을 때의 기본값임
num ?? "1"
// +
//옵셔널 체이닝 : 옵셔널 타입의 값 하위에 접근할 때도 ? 붙이기
num?.count
- 컬랙션 : 데이터를 효율적으로 관리하기 위한 자료형
- Array : 배열 -> 순서 ㅇ
let array: [Int] = [1, 2, 3]
//활용
//삽입
array.insert(1, at: 3)
//교체
array[1] = 5
//추가
array += [6]
//or
array.append(7)
//삭제
array.remove(at: 2)
//등등
- Dictionary : 키과 값을 쌍으로 만들어 관리하는 컬렉션 -> 순서 X, Hashable 해야함(값이 유일해야함)
let dic: [String: String] = ["A", "apple", "B", "banana"]
//활용
//업데이트
dic["A"] = "abc"
//삭제
dic["B"] = nil
//등등
- Set : 집합 -> 순서 X, Hashable
let set: Set = [1, 2, 3]
// 배열과 구분 안되기 때문에 반드시 Set 선언 해야함
//활용
//업데이트
set.update(with: 4)
//remove
set.remove(3)
//등등
요까지임둥
+) 추가
array를 자르면(slice) 타입이 Array<자료형>이 아니라
ArraySlice<자료형> 이렇게 됨.
Array 로 바꾸기 위해선 Array() 로 감싸주면 됨
let slice = array[1...3] // ArraySlice<Int> 타입
let newArray = Array(slice) // Array<Int> 타입
'STUDY > iOS' 카테고리의 다른 글
[앨런 swift 문법 마스터 스쿨] 열거형, 옵셔널 타입, 옵셔널 열거형 (0) | 2024.07.20 |
---|---|
버튼 참고 사항 (0) | 2024.07.20 |
[앨런 swift 문법 마스터 스쿨] 변수 상수 조건문 튜플 삼항연산자 반복문 함수 복습 ! (0) | 2024.07.14 |
[앨런 swift 문법 마스터 스쿨] 연습 문제 | 배운 문법 사용해보기 (0) | 2024.07.04 |
[앨런 swift 문법 마스터 스쿨] 함수 (0) | 2024.07.01 |