[인터뷰질문 003] tuples이란 무엇이고 어느 상황에서 유용하게 사용할 수 있습니까?
튜플이란?
튜플은 아주 작은 익명의 'struct'라고 생각하면 편합니다. 이게 무슨의미냐 하면, struct
라는 것을 생각해보면 다양한 타입의 프로퍼티 들이 들어갈 수 있습니다. Array
는 같은 타입만 넣을 수 있지만, 튜플은 여러 타입이 들어갈 수 있는 자료형 입니다.
예제
간단하고 익숙한 예제부터 설명 해보도록 하겠습니다.
let student = ("Leeo",17)
print(student.0, student.1) // Leeo 17
본인은 이름이 없고, student라는 변수에 할당했습니다. 그리고 현재는 구성 요소들의 이름이 없기 때문에 index
로 접근해야합니다. 다음은 이름을 줘 보도록 하겠습니다.
let student = (name: "Leeo",age: 17)
print(student.name, student.age) // Leeo 17
코드를 살펴보면 값을 이름으로 접근할 수 있습니다. 마치 struct
같지 않나요?
그리고 보이는 바와 같이 여러개의 다른 타입의 값들을 type-safe 하게 반환할 수 있습니다.
위와 같은 방법을 활용하여 1회용 이라면 struct
를 선언하지 않고 여러개의 값을 반환할 수 있습니다.
댓글
댓글 쓰기