7일 차: SwiftUI의 100일

함수, 매개변수 및 반환 값



https://www.hackingwithswift.com/100/swiftui/7

기능



함수를 사용하여 재사용 가능한 코드 블록을 작성할 수 있습니다. 함수를 사용하면 함수 내에서 사용될 매개변수 값을 추가하고 함수가 실행된 후 반환 값을 반환할 수 있습니다.

기본 기능은 다음과 같습니다.

func showIntroLyrics() {
    print("I wanna be the very best")
    print("Like no one ever was")
    print("To catch them is my real test")
    print("To train them is my cause")
}

// call the function
showIntroLyrics()


함수에 값을 전달해야 하는 경우 다음과 같이 괄호 안에 매개변수를 추가합니다().

func multiplicationTable(number: Int) {
    for i in 1...10 {
        print("\(i) x \(number) is \(i * number)")
    }
}

multiplicationTable(number: 5)


위의 예에서 number는 데이터 유형으로 Int만 허용하는 매개변수입니다.

함수가 값을 반환하도록 하려면 -> DataType 바로 앞에 {}를 추가합니다.

func isEven(number: Int) -> Bool {
    if number.isMultiple(of: 2) {
        return true

    } else {
        return  false
    }
}

print(isEven(number: 10))


위의 isEven 함수는 Bool 를 반환합니다.

여러 값을 반환하려면 tuples 를 사용하십시오.

func getUser() -> (firstName: String, lastName: String) {
    (firstName: "Ash", lastName: "Ketchum")
}

let user = getUser()
print("Name: \(user.firstName) \(user.lastName)")


getUser 함수의 반환 값을 얻는 것은 다음과 같이 단순화할 수 있습니다.

let (firstName, lastName) = getUser()
print("Name: \(firstName) \(lastName)")


다른 값이 필요하지 않으면 대신 _를 사용할 수 있습니다.

let (firstName, _) = getUser()
print("Name: \(firstName)")


매개변수 레이블을 사용자화할 수도 있습니다. 예를 들어, 매개변수를 받아들이는 함수가 있고 무엇을 전달할 것인지가 매우 분명한 경우 함수 정의에서 매개변수 이름 앞에 _를 추가할 수 있습니다.

func isUppercase(_ string: String) -> Bool {
    string == string.uppercased()
}

let string = "HELLO, WORLD"
let result = isUppercase(string)


함수 매개 변수와 함수 본문 모두에 의미 있는 이름을 지정하여 추가로 사용자 지정할 수도 있습니다.

func printTimesTables(for number: Int) {
    for i in 1...12 {
        print("\(i) x \(number) is \(i * number)")
    }
}

printTimesTables(for: 5)

좋은 웹페이지 즐겨찾기