[Swift 기초] 튜플 Tuple

2022. 3. 6. 16:01Swift 기초 정리

728x90

//공부 기록용 포스팅입니다. 틀린 부분이 있을 경우 댓글로 알려주시면 감사합니다! 😎

 

Tuples

  • var errorCode = (230, "null point assingment")
  • Swift 에서 사용하는 값의 무리지음(grouping of Values)
  • 괄호 () 를 사용하여 아이템을 정의, 여러 타입의 값들을 하나의 상수, 변수 값으로 만듬
    • ()안에 쉼표를 이용해서 동일한 형, 또는 서로 다른 형의 자료값을 묶어 하나의 자료형으로 취급
//초기화 부분, Int, String 형이 함께 상수값에 묶여져 있다.
var errorCode = (203, "Method Not Allowed") //(Int, String)

//dot연산을 통해 튜플 원소에 직접 접근하고 요소의 값을 변화시킬 수 있다.
print(errorCode.0) //203
errorCode.0 = 405
  • 여러 타입의 값들이 있는 튜플에서 Int형 값을 다른 타입의 값으로 변경할 수 없다.
    • errorCode.0 = "no”
    • Cannot assign value of type 'String' to type 'Int’
  • 선언했던 부분을 순서를 가진 튜플로 재생성하여 가져올 수 있다.
var (code, message) = errorCode
print("code = \(code)") //code = 405
  • 구조체와 비슷한 역할
var errorCodeInfo = (errorName: “405”, info: “Method Not Allowed”)
print(errorCodeInfo.errorName) //405
print(errorCodeInfo.info) //Method Not Allowed
  • 함수에서 값을 리턴받을 경우 매우 우용하게 사용할 수 있다.
func errorInfo(for name: Int) -> (name: Int, errorcode: String)? {
  let errorInfoList: [(name: Int, errorcode: String)] = [
    (404, "Not Found"),
    (405, "Method Not Allowed"),
  ]
    
  for errorInfo in errorInfoList {
    if errorInfo.name == name {
      return errorInfo
    }
  }
  return nil
}

print(errorInfo(for: 404)?.errorcode) // Optional("Not Found")
print(errorInfo(for: 200)?.errorcode) // nil

 

 

참고하였습니다. 감사합니다.

https://www.inflearn.com/course/창원대학교-박동규-교수의-swift-기초-강좌/lecture/1888?tab=curriculum 

 

창원대학교 박동규 교수의 Swift 언어 기초 강좌 - 인프런 | 학습 페이지

지식을 나누면 반드시 나에게 돌아옵니다. 인프런을 통해 나의 지식에 가치를 부여하세요....

www.inflearn.com

https://devxoul.gitbooks.io/ios-with-swift-in-40-hours/content/Chapter-3/tuples.html

 

튜플 (Tuple) · 40시간만에 Swift로 iOS 앱 만들기

 

devxoul.gitbooks.io

 

728x90