함수
2023. 5. 16. 21:07ㆍSwift 이해/Swift 문법
저번 시간에는 반복문에 대해 배웠습니다.
이번시간에는 함수에 대해 알아보겠습니다.
함수 정의
Swift에서의 함수는 재정의(Override)와 중복정의(Overload)를 지원합니다.
func 함수명(매개변수명 : 매개변수타입) -> 반환타입 {
//실행 구문
return 반환값
}
func : 함수키워드
return : 반환키워드
함수는 기본 4가지의 사용방식이 있습니다.
1.전달값과 반환값이 모두 있는 경우
func hello(name: String) -> String {
return "안녕하세요 \(name) 블로그 입니다"
}
hello(name: "오늘도앱개발") // 안녕하세요 오늘도앱개발 블로그 입니다
전달값 : 오늘도앱개발
반환값 : 안녕하세요 오늘도앱개발 블로그 입니다
2.전달값과 반환값이 모두 없는 경우
func hello() -> Void {
print("안녕하세요 오늘도앱개발 블로그 입니다")
}
hello() // 안녕하세요 오늘도앱개발 블로그 입니다
전달값 : X
반환값 : X
전달값이 없는 경우엔 매개변수를 비우고
반환값이 없는 경우엔 반환타입에 Void를 쓰고 return을 뺍니다.
3.전달값은 있고 반환값이 없는 경우
func hello(name: String) -> Void {
print("안녕하세요 \(name) 블로그 입니다")
}
hello(name: "오늘도앱개발") // 안녕하세요 오늘도앱개발 블로그 입니다
전달값 : 오늘도앱개발
반환값 : X
4.전달값은 없고 반환값이 있는 경우
func hello() -> String {
return "안녕하세요 오늘도앱개발 블로그 입니다"
}
hello() // 안녕하세요 오늘도앱개발 블로그 입니다
전달값 : X
반환값 : 안녕하세요 오늘도앱개발 블로그 입니다
이 4가지 사용방식에
파라미터 기본값 , 전달 인자 레이블 , 가변 매개변수를 적용시킬수 있습니다.
파라미터 기본값은 매개변수의 값을 함수내에 지정해주는 코드입니다.
func blog(name: String = "오늘도앱개발") -> Void {
print("블로그 : \(name)")
}
blog(name: "ios개발 블로그") // 블로그 : ios개발 블로그
blog() // 블로그 : 오늘도앱개발
전달 인자 레이블은 외부에서 함수를 호출할 때의 매개변수명과 함수 내부에서 사용되는 매개변수명을 다르게 설정할 때 사용됩니다.
func blog(name develop: String = "오늘도앱개발" ) -> Void {
print("블로그 : \(develop)")
}
blog(name: "ios개발 블로그") // 블로그 : ios개발 블로그
blog() // 블로그 : 오늘도앱개발
가변 매개 변수는 매개 변수 개수가 일정하지 않을때 사용합니다. (단, 매개변수 마지막에 선언)
func blog(name : String , keyword: String... ) -> Void {
print("블로그 : \(name), 키워드 : \(keyword)")
}
blog(name: "오늘도앱개발", keyword: "ios" , "swift" , "개발자")
// 블로그 : 오늘도앱개발, 키워드 : ["ios", "swift", "개발자"]
'Swift 이해 > Swift 문법' 카테고리의 다른 글
| [Swift] 프로퍼티 옵저버 (0) | 2023.06.19 |
|---|---|
| 반복문 (0) | 2023.05.14 |
| 조건문 (0) | 2023.05.07 |
| 컬렉션 데이터 타입 (0) | 2023.05.04 |
| 변수와 상수 , 자료형 , 기본 데이터 타입 (0) | 2023.05.03 |