언어(Programming Language)/Swift

[Swift] 함수 선언 및 사용법

RyanSin 2021. 6. 7. 13:01
반응형

- 개요

안녕하세요. 이번 시간에는 Swift에서 함수를 선언과 사용법에 대해 알아보겠습니다.

 

Swift에서 함수를 선언하는 방법은 func이라는 키워드를 사용합니다.

//func 함수 키워드
//setName 함수 이름
//(name:String) 전달 인자 이름:타입
// -> String 반환 타입
func setName(name:String) -> String{
    return name
}

다른 언어와 비슷하죠?(다른 언어를 안 해보셨다면... 아래 내용을 더 읽어주세요. :>)

 

- 사용법

함수에서 기본 4가지 사용방식이 있습니다.

 

1. 전달 값이 있고, 반환 값이 있는 함수(전달 O, 반환 O)

2. 전달 값이 없고, 반환 값이 없는 함수(전달 X, 반환 X)

3. 전달 값이 있고, 반환 값은 없는 함수(전달 O, 반환 X)

4. 전달 값이 없고, 반환 값이 있는 함수(전달 X, 반환 O)

 

1. 전달 O, 반환 O

처음에 선언 했던 함수가 전달 값과 반환 값이 모두 있는 함수입니다.

//전달 O, 반환 O
func setName(name:String) -> String{
    return name
}

setName(name: "개발이 취미인 사람")

2. 전달 X, 반환 X

//전달 X, 반환 X
func setName() -> Void{
    print("개발이 취미인 사람")
}

setName()

//동일한 함수
func setName(){
    print("개발이 취미인 사람")
}

setName()

3. 전달 O, 반환 X

//전달 O, 반환 X
func setName(name:String) -> Void {
    print("이름은 : \(name)")
}

setName(name: "개발이 취미인 사람")

4. 전달 X, 반환 X

//전달 X, 반환 X
func setName() -> Void {
    print("개발이 취미인 사람")
}

setName()

 

- 함수 고급

함수를 사용할 때 몇 가지 스킬들이 있습니다. 그것은 바로 "파라미터 기본 값, 전달 인자 레이블, 가변 매개변수"입니다.

 

1. 파라미터 기본 값

말 그대로 함수에 선언한 파라미터에 기본 값을 설정합니다.

func setName(name:String = "개발자") -> Void {
    print("이름은 : \(name)")
}

setName(name: "개발이 취미인 사람") // 개발이 취미인 사람 출력
setName()// 개발자 출력

위와 같이 파라미터에 기본 값을 설정하면 파라미터가 없다면 설정한 기본 값을 사용합니다.

 

2. 전달 인자 레이블

전달인자 레이블은 외부에서 함수를 호출할 때 파라미터 명과 함수 내부에서 사용되는 변수명을 다르게 설정할 때 사용된다.

func setName(name friend:String = "개발자") -> Void {
    print("이름은 : \(friend)")
}

setName(name: "개발이 취미인 사람") // 개발이 취미인 사람 출력
setName()// 개발자 출력

 

3. 가변 매개 변수

가변 매개 변수는 파라미터 개수가 일정하지 않을 때 사용된다. (주의 : 파라미터 맨 마지막에 선언해야 된다!!)

func setName(name:String = "개발자", friend: String...) -> Void {
    print(" \(name) 친구들 : \(friend)")
}

setName(name: "개발자",friend: "라이언", "무지", "콘", "어피치" )

//실행 결과
//개발자 친구들 : ["라이언", "무지", "콘", "어피치"]

 

이번 시간에는 Swift에서 함수 사용법에 대해 알아봤습니다. :)

실습은 꼭 하세요~~