본문 바로가기
iOS

[iOS 앱 개발] Swift 함수(func)

by Dokon Jang 2022. 9. 6.
반응형

Swift에서 함수를 정의하는 방법입니다.

간단히 코드로 정리했습니다.

 

함수 문법
func [함수명]([파라미터 이름]:[데이터 타입]) -> [반환 타입] {
	return [반환 값]
}

 

파라미터/반환 값 없는 함수
func sayHello() {
	print("Hello World")
}

sayHello()

 

반환 값 있는 함수
func getHello() -> String{
	return "Hello World"
}

print(getHello())

 

파라미터/반환 값 있는 함수
func getHello(name : String) -> String{
	return "Hello \(name)"
}

print(getHello(name : "JJ"))

 

파라미터 이름 없이 호출 할 수 있는 함수
파라미터 이름 앞에 "_"(언더바)를 넣으면 파라미터 이름 없이 호출 가능
func getHello(_ name : String) -> String{
	return "Hello \(name)"
}

print(getHello("JJ"))

 

파라미터를 가변적으로 여러 값을 전달하는 함수
func max(x : Int...) -> Int {
    var max = Int.min
    
    for value in x {
        if max < value {
            max = value
        }
    }

    return max
}

print(max(x: 1, 2, 4, 3))

 

여러 값을 튜플로 리턴하는 함수
func getMinMax(values : Int...) -> (min : Int, max : Int){
	var minValue = Int.max
    var maxValue = Int.min
	
	for v in values {
        if minValue > v {
            minValue = v
        }

        if maxValue < v {
            maxValue = v
        }
    }
	
    return (minValue, maxValue)
}

var minMax = getMinMax(values : 0, 5, 3, 4)
print("MIN : \(minMax.0), MAX : \(minMax.1)")

 

파라미터 이름에 레이블 지정한 함수
파라미터 이름 앞에 레이블을 지정하면 파라미터를 레이블로 함수 호출
func add(x xValue : Int, y yValue : Int) -> Int {
    return xValue * yValue
}

print(add(x : 10, y : 3))
반응형

댓글