iOS/Swift이론

[iOS]Swift 함수

Sweetft 2022. 3. 17. 12:05

Swift의 함수에 대해서 알아보자.

함수(function) : 작업을 수행하는 코드의 집합

 

스위프트에서 함수의 키워드는 func이다.

 

함수의 기본 형태

func 함수명(파라미터 이름:데이터 타입) -> 반환 타입 {

   return 반환 값

}

 

//리턴값이 Int인 함수
func sum(a: Int, b: Int) -> Int {
    return a+b
}
var ans = sum(a: 10, b: 2)
print(ans)

//리턴값이 String인 함수
func display() -> String {
    return "Hello"
}
print(display())


/*
   //반환 값이 없는 함수를 선언하는 방법은 밑과 같다. (둘은 같은 의미)
func printName() -> Void {}
func printName() {}
*/

//함수의 매개변수에 기본값이 들어있는 형식
func greeting(friend: String, me: String = "Yej") {
    print("hello, \(friend)! I'm \(me)")
}
greeting(friend: "Sujeong")

 

func 함수 이름(전달인자 레이블: 매개변수 이름: 매개변수 타입, 전달인자 레이블:
      매개변수 이름: 매개변수 타입...) -> 반환 타입 {
   return 반환 값        
}

//전달인자 레이블이 있는 형식
func message(from myName: String, to name: String) -> String{
    return "Hello \(name)! I'm \(myName)"
}
print(message(from: "Yej", to: "Sujeong"))

//와일드카드 식별자를 사용하여 전달인자 레이블을 사용하지 않는 형식
func message(_ name: String) -> String {
    return "hello \(name)"
}
print(message("Yej"))

//가변매개변수로 정의되어 여러 개의 문자열을 넘길 수 있는 형식
func message(me: String, friends: String...) -> String {
    return "hello \(friends)! I'm \(me)"
}
print(message(me: "Yej", friends: "Winter", "Summer", "Spring"))

//가변매개변수인 경우 배열을 넘겨받을 수 있다.

 

 

 

매개변수 = 파라미터 : 함수를 정의할 때 사용하는 인수

인수 = 아규먼트 : 매개변수에 담는 실제 값

 

func sum(a: Int, b: Int) -> Int {
    return a+b
}

var ans = sum(a: 10, b: 2)

여기서 첫번째 줄의 a와 b는 파라미터, 마지막줄의  10과 2가 바로 아규먼트이다.

 

 

출처 : 패스트캠퍼스 온라인 강좌