swift & iOS/swift

[swift] 함수에서 여러 개의 값을 반환하기 (튜플)

whale3 2022. 1. 27. 15:20

튜플 자료형을 사용하여 함수에서 여러 개의 값을 반환할 수 있다. 

아래 함수는 배열에서 가장 작은 정수, 가장 큰 정수를 찾아 각각 min, max라는 이름이 붙여진 (min: 숫자, max: 숫자) 이렇게 생긴 튜플 자료형을 반환한다. 

// 출처: https://docs.swift.org/swift-book/LanguageGuide/Functions.html#ID164

func minMax(array: [Int]) -> (min: Int, max: Int) {
    var currentMin = array[0]
    var currentMax = array[0]

    for val in array[1..<array.count] {
        if val < currentMin {
            currentMin = val
        } else if val > currentMax {
            currentMax = val
        }
    }

    return (currentMin, currentMax)
}

let x = minMax(array: arr)
print(x) // (min: 0, max: 11)

let (minNum, maxNum) = minMax(array: arr)
print(minNum, maxNum) // 0 11
print(type(of: minNum)) // Int

 

반응형