日7:Swiftuiの100日
8452 ワード
関数、パラメータ、返り値
https://www.hackingwithswift.com/100/swiftui/7
関数
関数を使用してコードの再利用可能なブロックを書くことができます.関数を使用すると、関数内で使用されるパラメーター値を追加でき、関数が実行されると、値を返すことができます.
基本的な機能は次のようになります.
func showIntroLyrics() {
print("I wanna be the very best")
print("Like no one ever was")
print("To catch them is my real test")
print("To train them is my cause")
}
// call the function
showIntroLyrics()
この関数の値を渡す必要がある場合は、以下のように括弧内のパラメータを追加してください.func multiplicationTable(number: Int) {
for i in 1...10 {
print("\(i) x \(number) is \(i * number)")
}
}
multiplicationTable(number: 5)
上記の例では、()
はデータ型としてnumber
だけを受け入れるパラメータです.関数の値を返すには
Int
以前に-> DataType
を追加します.func isEven(number: Int) -> Bool {
if number.isMultiple(of: 2) {
return true
} else {
return false
}
}
print(isEven(number: 10))
上記の{}
機能はisEven
を返します.複数の値を返すには
Bool
を使います.func getUser() -> (firstName: String, lastName: String) {
(firstName: "Ash", lastName: "Ketchum")
}
let user = getUser()
print("Name: \(user.firstName) \(user.lastName)")
上記のtuples
関数の戻り値を取得するには、次のように簡単にできます.let (firstName, lastName) = getUser()
print("Name: \(firstName) \(lastName)")
他の値を必要としない場合は、代わりにgetUser
を使用できます.let (firstName, _) = getUser()
print("Name: \(firstName)")
パラメーターラベルをカスタマイズすることもできます.たとえば、パラメーターを受け入れる関数を持っており、何を渡したいのかはかなりわかりやすいので、関数定義のパラメーター名の前に_
を追加できます.func isUppercase(_ string: String) -> Bool {
string == string.uppercased()
}
let string = "HELLO, WORLD"
let result = isUppercase(string)
関数パラメータと関数本体の両方に意味のある名前を付けることで、さらにカスタマイズできます.func printTimesTables(for number: Int) {
for i in 1...12 {
print("\(i) x \(number) is \(i * number)")
}
}
printTimesTables(for: 5)
Reference
この問題について(日7:Swiftuiの100日), 我々は、より多くの情報をここで見つけました https://dev.to/johnkevinlosito/day-7-100-days-of-swiftui-5ailテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol