1. 함수 선언의 기본 형태
func 함수이름(매개변수1이름: 매개변수1타입, 매개변수2이름: 매개변수2타입 ...) -> 반환타입
{
// 함수 구현부
return 반환값
}
예시로
sum 이라는 이름을 가진, a와 b라는 Int 타입의 매개변수를 가지며, Int 타입의 값을 반환하는 함수
를 작성해본다면,
func sum(a: Int, b: Int) -> Int
{
return a + b
}
2. 반환 값이 없는 함수
func 함수이름(매개변수1이름: 매개변수1타입, 매개변수2이름: 매개변수2타입 ...) -> Void
{
// 함수 구현부
return
}
예시로 작성해보면
func printMyname(name: String) -> Void
{
print(name)
}
반환 값이 없는 경우에는 반환 타입(Void)을 생략해 줄 수 있다
func printYourName(name: String)
{
print(name)
}
3. 매개변수가 없는 함수
func 함수이름() -> 반환타입
{
// 함수 구현부
return 반환값
}
예시로 작성해보면
func maximumIntegerValue() -> Int
{
return Int.max
}
4. 매개변수와 반환값이 없는 함수
func 함수이름() -> Void
{
// 함수 구현부
return
}
예시로 작성해보면
func hello() -> Void
{
print("hello")
}
함수 구현이 짧은 경우 가독성을 해치지 않는 범위에서 줄바꿈을 하지 않고 한 줄에 표현해도 무관하다
func hello() -> Void { print("hello") }
또, 반환 값이 없는 경우, 반환 타입(Void)을 생략해 줄 수 있다
func 함수이름()
{
// 함수 구현부
return
}
5. 함수의 호출
sum(a: 3, b: 5)
printMyName(name: "jjudy")
printYourName(name: "hana")
maximumIntegerValue()
hello()
bye()
8
jjudy
hana
2147483647 (Int의 최댓값)
hello
bye
정리
함수를 구현하는 기본적인 방식은
func 함수이름(매개변수1이름: 매개변수1타입, 매개변수2이름: 매개변수2타입 ...) -> 반환타입
{
// 함수 구현부
return 반환값
}
함수의 형태에는 4가지 타입이 있다
1. 매개변수, 반환 값 모두 있는 함수 (매개변수 O, 반환 값 O)
func 함수이름(매개변수1이름: 매개변수1타입, 매개변수2이름: 매개변수2타입 ...) -> 반환타입
{
// 함수 구현부
return 반환 값
}
2. 반환 값이 없는 함수 (매개변수 O, 반환 값 X)
func 함수이름(매개변수1이름: 매개변수1타입, 매개변수2이름: 매개변수2타입 ...) -> Void
{
// 함수 구현부
return
}
3. 매개변수가 없는 함수 (매개변수 X, 반환 값 O)
func 함수이름() -> 반환타입
{
// 함수 구현부
return 반환값
}
4. 매개변수, 반환 값 모두 없는 함수 (매개변수 X, 반환 값 X)
func 함수이름() -> Void
{
// 함수 구현부
return
}
2022.02.23 - [Study/Swift_BoostCourse_Basic] - iOS 프로그래밍을 위한 스위프트 기초
iOS 프로그래밍을 위한 스위프트 기초
다음과 같이 연재되는 포스트는 부스트코스에서 야곰님의 'iOS 프로그래밍을 위한 스위프트 기초' 강좌를 수강한 후 작성한 기록입니다. 부스트코스에서 야곰님의 'iOS 프로그래밍을 위한 스위프
jjudy99.tistory.com
'[Non-Updated] iOS > Swift_BoostCourse_Basic' 카테고리의 다른 글
[Swift_BoostCourse_Basic] CH 1_09. 조건문 (0) | 2022.02.25 |
---|---|
[Swift_BoostCourse_Basic] CH 1_08. 함수 고급 (0) | 2022.02.25 |
[Swift_BoostCourse_Basic] CH 1_06. 컬렉션 타입(Array, Dictionary, Set) (0) | 2022.02.24 |
[Swift_BoostCourse_Basic] CH 1_05. Any, AnyObject, nil (0) | 2022.02.23 |
[Swift_BoostCourse_Basic] CH 1_04. 기본 데이터 타입 (0) | 2022.02.23 |