iOS π/Swift
Swift-03 ν¨μ
yongmin.Lee
2021. 1. 26. 10:24
ν¨μμ μΈμ κΈ°λ³Ένν
func ν¨μμ΄λ¦(맀κ°λ³μ1μ΄λ¦: 맀κ°λ³μ1νμ
, 맀κ°λ³μ2μ΄λ¦: 맀κ°λ³μ2νμ
...) -> λ°ννμ
{
/* ν¨μ ꡬνλΆ */
return λ°νκ°
}
// μ1)
func sum(a: Int, b: Int) -> Int {
return a + b
}
// μ2 : 맀κ°λ³μκ° μλ ν¨μ)
func maximumIntegerValue() -> Int {
return Int.max
}
λ°ν κ°μ΄ μλ ν¨μ
func ν¨μμ΄λ¦(맀κ°λ³μ1μ΄λ¦: 맀κ°λ³μ1νμ
, 맀κ°λ³μ2μ΄λ¦: 맀κ°λ³μ2νμ
...) -> Void {
/* ν¨μ ꡬνλΆ */
return // λ°νκ°μ΄ μλλΌλ return ν€μλλ κΈ°μ¬νμ¬ ν¨μμ μ’
λ£λ₯Ό λͺ
μ
}
// μ)
func printMyName(name: String) -> Void {
print(name)
return
}
맀κ°λ³μ κΈ°λ³Έ κ°
func ν¨μμ΄λ¦(맀κ°λ³μ1μ΄λ¦: 맀κ°λ³μ1νμ
, 맀κ°λ³μ2μ΄λ¦: 맀κ°λ³μ2νμ
= 맀κ°λ³μ κΈ°λ³Έκ° ...) -> λ°ννμ
{
/* ν¨μ ꡬνλΆ */
return λ°νκ°
}
// μ
func greeting(friend: String, me: String = "yagom") {
print("Hello \(friend)! I'm \(me)")
}
μ λ¬μΈμ λ μ΄λΈ
ν¨μλ₯Ό νΈμΆν λ ν¨μ μ¬μ©μμ μ μ₯μμ 맀κ°λ³μμ μν μ μ’ λ λͺ ννκ² νννκ³ μ ν λ μ¬μ©
μ λ¬μΈμ λ μ΄λΈμ λ³κ²½νμ¬ λμΌν μ΄λ¦μ ν¨μλ₯Ό μ€λ³΅μΌλ‘ μμ±κ°λ₯
func ν¨μμ΄λ¦(μ λ¬μΈμ λ μ΄λΈ 맀κ°λ³μ1μ΄λ¦: 맀κ°λ³μ1νμ
, μ λ¬μΈμ λ μ΄λΈ 맀κ°λ³μ2μ΄λ¦: 맀κ°λ³μ2νμ
...) -> λ°ννμ
{
/* ν¨μ ꡬνλΆ */
return
}
// "ν¨μ λ΄λΆ"μμ μ λ¬μΈμλ₯Ό μ¬μ©ν λμλ "맀κ°λ³μ μ΄λ¦"μ μ¬μ©ν©λλ€
func greeting(to friend: String, from me: String) {
print("Hello \(friend)! I'm \(me)")
}
// "ν¨μλ₯Ό νΈμΆ" ν λμλ μ λ¬μΈμ "λ μ΄λΈ"μ μ¬μ©ν΄μΌ ν©λλ€
greeting(to: "hana", from: "yagom") // Hello hana! I'm yagom
κ°λ³ 맀κ°λ³μ
μ λ¬ λ°μ κ°μ κ°μλ₯Ό μκΈ° μ΄λ €μΈ λ μ¬μ©ν μ μμ΅λλ€
κ°λ³ 맀κ°λ³μλ ν¨μλΉ νλλ§ κ°μ§ μ μμ΅λλ€
func ν¨μμ΄λ¦(맀κ°λ³μ1μ΄λ¦: 맀κ°λ³μ1νμ
, μ λ¬μΈμ λ μ΄λΈ 맀κ°λ³μ2μ΄λ¦: 맀κ°λ³μ2νμ
...) -> λ°ννμ
{
/* ν¨μ ꡬνλΆ */
return
}
func sayHelloToFriends(me: String, friends: String...) -> String {
return "Hello \(friends)! I'm \(me)!"
}
print(sayHelloToFriends(me: "yagom", friends: "hana", "eric", "wing"))
// Hello ["hana", "eric", "wing"]! I'm yagom!
print(sayHelloToFriends(me: "yagom"))
// Hello []! I'm yagom!
λ°μ΄ν° νμ μΌλ‘μμ ν¨μ
μ€μννΈλ ν¨μν νλ‘κ·Έλλ° ν¨λ¬λ€μμ ν¬ν¨νλ λ€μ€ ν¨λ¬λ€μ μΈμ΄μ΄λ―λ‘ μ€μννΈμ ν¨μλ μΌκΈκ°μ²΄μ λλ€.
κ·Έλμ ν¨μλ₯Ό λ³μ, μμ λ±μ ν λΉμ΄ κ°λ₯νκ³ λ§€κ°λ³μλ₯Ό ν΅ν΄ μ λ¬ν μλ μμ΅λλ€
// ν¨μνμ
: (맀κ°λ³μ1νμ
, 맀κ°λ³μ2νμ
...) -> λ°ννμ
var someFunction: (String, String) -> Void = greeting(to:from:)
someFunction("eric", "yagom")
// Hello eric! I'm yagom