일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 러닝타이머
- App Store Connect
- weatherKit
- Timer
- MKMapItem
- RunningTimer
- Protocol
- CoreLocation
- Startign Assignments
- weak var
- 러닝기록앱
- Xcode
- 영문 개인정보처리방침
- addannotation
- WeatherManager
- 클로저의 캡슐화
- UIAlertAction
- 한국어 개인정보처리방침
- SwiftUI Boolean 값
- font book
- AnyObject
- xcode로 날씨앱 만들기
- MKMapViewDelegate
- Required Reason API
- 단일 책임원칙
- UICollectionViewFlowLayout
- swift
- CLLocationManagerDelegate
- dispatchsource
- 서체관리자
- Today
- Total
VesselWheel
Tuple Decomposition 본문
import UIKit
/*
Tuple Decomposition
*/
let data = ("<html>", 200, "OK", 12.34)
/*
let body = data.0
let code = data.1
let message = data.2
let size = data.3
*/
let(body, code, message, size) = data
print("body :",body)
print("code :",code)
print("message :",message)
print("size :",size)
let(body2, code2, message2, _) = data
print("body2 :",body2)
print("code2 :",code2)
print("message2:",message2)
print("----------------------")
// tuple matching
// let resolution = (3840.0, 2160.0)
let resolution = (1920.0, 1080.0)
if resolution.0 == 3840 && resolution.1 == 2160{
print("4K 화질")
}
switch resolution{
// value binding 으로 16:9 해상도 매칭하기
case let(w, h) where w / h == 16.0 / 9.0:
print("16 : 9")
// wildcard pattern
// 높이와 관계없이 가로만 1080 인 해상도
case(_, 1080):
print("1080p")
// interval matching
case(3840...4096, 2160):
print("4K")
default:
break
}
'Xcode Study' 카테고리의 다른 글
Foundation String (1) | 2023.10.16 |
---|---|
String / Character (0) | 2023.10.16 |
tuple (0) | 2023.10.16 |
값 캡쳐하기 : capturing values (0) | 2023.10.16 |
Closure (0) | 2023.10.16 |