새소식

iOS/Swift

[기본문법] 함수

  • -

함수: 작업의 가장 작은 단위이자 코드의 집합으로 반복적인 프로그래밍을 피하고자 사용한다.

  • 함수 선언과 사용
  • 호출 시 매개변수 기본값 설정
  • 반환값이 없는 함수
/*
 func 함수명(파라미터 이름: 데이터타입) -> 반환타입 { return 반환 값 }
 */


// #두개의 값을 더하는 함수 
func sum(a: Int, b: Int) -> Int{
    return a+b
}
//사용
sum(a: 5, b: 3)   // 8



// #호출되면 hello 를 반환하는 함수
func hello() -> String{
    return "hello"
}
//사용
hello() //"hello"


// #호출 시 매개변수 기본값 설정
func greeting(friend: String, me: String = "Sue") {
    print("hello \(friend)! I'm \(me)")
}
//사용
greeting(friend: "Harry") // "hello Harry! I'm Sue/n"


// #반환값이 없는 함수
func printname() -> Void{}

 

전달인자 레이블을 사용하면 매개변수의 역할을 명확하게 파악할 수 있으며 코드의 가독성이 좋아진다.

  • 전달인자 레이블을 사용하는 함수
  • 전달인자 레이블을 사용하지 않는 함수
  • 가변매개변수를 사용하는 함수
// #전달인자 레이블을 사용하는 함수
/*
 func함수 이름(전달인자 레이블: 매개변수 이름: 메게변수 타입, 전달인자 레이블: 매개변수 이름: 메게변수 타입) -> 반환타입 {
 return 반환값
 }
 */

// #전달인자 레이블을 사용하는 함수 선언
func sendMessage(from myname: String, to name: String) -> String{
    return "Hello \(name)! I'm \(myname)"
}
//사용
sendMessage(from: "Harry", to: "Sue") //"Hello Sue! I'm Harry"

// #전달인자 레이블을 사용하지 않는 함수선언
func sendMessage(_ name: String) -> String{
    return "Hello \(name)!"
}
//사용
sendMessage("Harry")  //"Hello Harry!"


// #가변매개변수 사용하는 함수선언
// 함수마다 가변매개변수는 하나만 가질 수 있음
func sendMessage(me: String, friends: String...) -> String{
    return "Hello \(friends)! I'm \(me)"
}
//사용
//가변 매개변수의 값이 배열의 형태로 저장되는 것을 볼 수 있다.
sendMessage(me: "Harry", friends: "Sue", "Justin") //"Hello["Sue", "Justin"]! I'm Harry"

End

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

[기본문법]옵셔널  (0) 2022.10.26
[기본 문법] 반복문  (0) 2022.10.26
[기본문법] 조건문  (0) 2022.10.26
[기본문법]컬렉션타입(Array, Dictionary, Set)  (0) 2022.10.22
[기본문법]상수와 변수, 기본데이터 타입  (0) 2022.10.20
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.