[iOS-Swift] 함수

TIL 8일 차 - Swift 문법 함수

 

Swift의 함수는 자바나 파이썬과 같은 다른 언어와는 조금 다르게 생겼다.

 

파라미터나 반환값은 있어도 되고 없어도 된다.

// 함수의 선언
func 함수이름(파라미터 이름: 파라미터 타입) -> 반환 타입 {
    // 실행할 코드
    return 반환할 값
}

// 파라미터가 여러개인 경우
func 함수이름(파라미터1 이름: 파라미터1 타입, 파라미터2 이름: 파라미터2 타입) -> 반환 타입 (
    // 실행할 코드
    return 반환할 값
)

// 파라미터가 없는 경우
func 함수이름() -> 반환 타입 (
    // 실행할 코드
    return 반환할 값
)

// 반환값이 없는 경우
func 함수이름(파라미터 이름: 파라미터 타입) {
    // 실행할 코드
    // 반환값이 없으므로 return이 없어도 됨
    // 함수를 탈출하고 싶을때 return만 써주면 함수에서 탈출함
}

// 파라미터와 반환값 모두 없는 경우
func 함수이름() {
    // 실행할 코드
}

 

return 값에 문자열이 있다고 무조건 문자열이 출력되지 않는다. 무조건 print() 문을 붙여야 함.

func sayHello(name: String) -> String {
    return "안녕하세요. \(name)님!"
    // 파라미터 name을 만들어 문자열로 반환함
}

// 함수의 사용법
sayHello(name: "모찌")
// 문자열 출력되지 않음.


func printHello() {
    print("안녕하세요!")
}

printHello() // 함수 호출
// 안녕하세요! 출력


// 더하기 함수 정의
func add(a: Int, b: Int) -> Int {
    return a+b
}

let result = add(a: 3, b: 7)
print(result) // 10 출력

 

 

Swift에서는 구현부에서 사용하는 파라미터의 이름과 호출부에서 사용하는 파라미터의 이름을 다르게 할 수 있다.

  • 첫 번째 이름: 함수 호출할 때 사용하는 이름
  • 두 번째 이름: 함수 구현부에서 사용하는 이름
// 파라미터의 이름을 스페이스로 띄우고 2개를 입력하면 각각 호출, 구현부에서 사용하는 이름으로 지정할 수 있다.
func sayHello(to name: String) {
    print("\(name)님 안녕하세요!")
}

// 첫번째 파라미터의 값을 이용해 호출할 수 있다
sayHello(to: "모찌")
// '모찌님 안녕하세요!' 출력


// _를 사용해 파라미터의 이름을 생략할 수 있다
func sayBye(_ name: String) {
    print("\(name)님 안녕히가세요.")
}

// 파라미터 생략 된 함수 호출하기
sayBye("모찌")
// '모찌님 안녕히가세요.' 출력

 

'iOS  > Swift ' 카테고리의 다른 글

[iOS-Swift] 고차함수  (0) 2026.01.07
[iOS-Swift] 고급 데이터 타입(Collection Type)  (0) 2026.01.06
[iOS-Swift] 조건문  (0) 2026.01.06
[iOS-Swift] 기본 데이터 타입  (0) 2026.01.06
[iOS-Swift] 변수와 상수  (0) 2026.01.06