Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- class
- IOS
- MyLife
- uikit
- unrecognized selector sent to class
- SWIFT
- 바이트디그리
- Switch
- 회고
- ios 개발 강의
- Git
- On branch is up to date with ' '
- 파스칼표기법
- 제어전송문
- 글또
- 연관값
- 내_삶
- actionSheet
- error해결
- 다짐글
- avaliable
- 생명주기
- AnyObject
- K디지털기초역량훈련
- copy-on-write
- 글또9기
- struct
- weekly calendar
- 코드스니펫
- 주간 달력
Archives
- Today
- Total
seong_hye, the developer
Swift) 문법 정리 - 튜플 본문
여러가지로 이루어진 연관된 데이터는 어떻게 저장할까?
튜플을 활용한다.
튜플
원하는 연관된 데이터의 조합으로 어떤 형태든 만들 수 있는 타입
(다만, 변수를 선언과 동시 해당 멤버(데이터의 종류 및 갯수)는 결정되므로 추가/ 삭제는 불가)
ex) 좌표 (Int, Int) / 3차원 공간( Int, Int, Int)
- 접근할 때는 변수명.0, 변수명.1 ==> 점을 활용하여 접근
이름이 매겨진 튜플
데이터의 각 요소에 이름을 붙일 수 있음
ex) var iOS = ("Swift", 2024)
var iOS = (language: "Swift", year: 2024)
- 접근할 때 iOS.language, iOS.year로 접근 가능 ==> 코드의 가독성 높아짐
튜플 분해
튜플의 각 요소를 각각 상수, 변수화 가능(바인딩)
데이터를 분해해서 활용할 수 있게 됨
ex) let (name, age, address) = ("seong_hye", 24, "부산")
튜플의 특징
- switch문과 자주 활용됨
- 각 케이스 내에서 튜플의 각 요소를 활용하려 할때 주로 사용
- 어떤 조건에 따라 튜플 케이스를 처리하려고 할떄 주로 사용
switch coordinate {
case (let a, z) where a == z: //조건에 따라 튜플을 처리할 때
print("좌표는 \(x), \(y)입니다.")
case (let x, let y): //각 케이스 내에서 튜플 요소 활용할 떄
print("좌표는 \(x), \(y)입니다.")
defalt:
break
}
튜플을 사용하려는 이유는?
함수는 원칙적으로 리턴값이 한 개만 존재하기 때문에 여러개의 값을 반환할 수 없지만
어떤 묶음 값으로 반환하는 것은 가능
~> 튜플로 반환하는 것은 더 유용한 정보를 제공할 수 있음
참고자료)
'IOS' 카테고리의 다른 글
Swift) 문법 정리 - 열거형(Enum) (0) | 2022.07.12 |
---|---|
Swift) 문법 정리 - 프로토콜 (0) | 2022.07.12 |
Swift) 문법 정리 - 타입 캐스팅(Type Casting) / Any, AnyObject (0) | 2022.07.12 |
Swift) 문법 정리 - 상속 (0) | 2022.07.12 |
Swift) 문법 정리 - 속성(Property) & 함수(Method) (0) | 2022.07.12 |
Comments