튜플
- 2개 이상의 연관된 데이터를 저장하는 타입이다.
- 멤버는 튜플을 만들때 결정되므로 추가 및 삭제가 불가능하다.
튜플의 선언
var threeValues = ("usingkim", 20, "Busan")
튜플의 접근
print(threeValues.0)
Named Tuple
named tuple의 선언
var namedThreeValues = (name: "usingkim", age: 20, address: "Busan")
named tuple의 접근
print(namedThreeValues.0)
print(namedThreeValues.age)
튜플의 분해
var (f, s, t) = threeValues
튜플 값의 비교
- 두개의 튜플 비교가 가능하다
- 왼쪽 멤버부터 한번에 하나씩 비교하고, 같을 경우 다음 멤버를 비교함
튜플과 switch문
let iOS = (language: "Swift", version: "5")
switch iOS {
case ("Swift", "5"):
print("스위프트 버전 5입니다.")
case ("Swift", "4"):
print("스위프트 버전 4입니다.")
default:
break
}
바인딩을 이용할 수 있다.
switch coordinate {
case (let distance, 0), (0, let distance):
print("X 또는 Y축 위에 위치하며, \(distance)만큼의 거리가 떨어져 있음")
default:
print("축 위에 있지 않음")
}
witch coordinate {
case (let x, let y) where x == y:
print("(\(x), \(y))의 좌표는 y = x 1차함수의 그래프 위에 있다.")
case let (x, y) where x == -y:
print("(\(x), \(y))의 좌표는 y = -x 1차함수의 그래프 위에 있다.")
case let (x, y):
print("(\(x), \(y))의 좌표는 y = x, 또는 y = -x 그래프가 아닌 임의의 지점에 있다.")
}