「:」は「コロン」って呼ばれる記号だよ
みなさん、こんにちは!
最近はTwitterで猫動画をリツイートすることが天職だと思っている、あらたまです。
さて今日は「はじめてのKotlin入門」の第11回目です。
おさらい
前回の「第10回 関数をつくろう」では 「どすこい!」などと表示する関数「printDosukoi」を作ってみましたね。
fun main() {
println("Hello, world!!!")
printDosukoi()
printDosukoi()
printDosukoi()
}
fun printDosukoi() {
println("どすこい!")
println("どやさ!")
println("どげんかせんといかん!")
}
今回はこの自作の関数に「引数」をわたす方法についてお話したいと思います。
「Kotlin Playground」を開いて準備してくださいね。
「引数(ひきすう)」ってなんだっけ?
少し前になりますが「第4回 画面に文字を表示する~引数」で、引数のお話をしました。そのときの内容をまとめると、
- 「引数」は関数に引き渡す値のこと
- 「引数」は関数を呼び出すときに、後ろのカッコ「()」の中に渡したい値を書く
ということでした。
例えばprintln関数なら、
println("どすこい!")
この「どすこい!」の部分が引数ということですね。
作った関数で引数を受け取ろう
それでは自作の関数「printDosukoi」で引数を受け取るためにはどのようにすれば良いのでしょうか?
正解はこんな感じです。
fun printDosukoi(name: String) {
println("どすこい!")
println("どやさ!")
println("どげんかせんといかん!")
}
関数を作るときのカッコの中に、「引数名:引数の型」というふうに書いてあげるだけです。
複数の引数を受け取りたいときは、「,(カンマ)」で区切って書きます。
fun printDosukoi(name: String, age: Int) {
println("どすこい!")
println("どやさ!")
println("どげんかせんといかん!")
}
では、引数名と引数の型についてご説明します。
引数名はわかりやすい名前をつけよう
引数名はあなたの好きな名前をつけることができます。
fun printDosukoi(name: String, age: Int) {
println("どすこい!")
println("どやさ!")
println("どげんかせんといかん!")
}
どのような意味の値が引き渡されるのか、できるだけわかりやすい名前をつけてくださいね。
引数の型
引数の型は、どのような種類の値を渡すことができるのかを指定します。
fun printDosukoi(name: String, age: Int) {
println("どすこい!")
println("どやさ!")
println("どげんかせんといかん!")
}
今回の例で書いた「String(ストリング)」は「文字列」、「Int(イント)」は「整数」が引数として渡されることを記述しています。
引数の型は他にもいろいろありますが、あとひとつだけ抑えておきたいのは「Float(フロート)」。Floatは「小数」を表します。
引数で渡された値を使ってみる
それでは引数を受け取る準備ができましたので、受け取った引数を使ってみたいと思います。
とは言っても、じつは使いかたをみなさんはすでに知っています。
「第8回 数値を入れた変数のつかいかた」や 「第9回 文字列を入れた変数のつかいかた」で、 学習した「変数」と同じような感覚で使うことができるのです。
今回は、引数で受け取った値を表示するように1行追加してみました。
fun printDosukoi(name: String, age: Int) {
println(name + "さん(" + age + "歳)が言った")
println("どすこい!")
println("どやさ!")
println("どげんかせんといかん!")
}
引数を渡す
関数がわの方で引数を受け取る準備、使う準備ができましたので、 あとは呼び出すときに引数を渡してあげるだけです。
渡し方はprintln関数などといっしょ。関数名のうしろのカッコに渡したい値を書きます。
こちらも複数の引数を渡す場合は、「,(カンマ)」で区切って書きます。
fun main() {
println("Hello, world!!!")
printDosukoi("田中", 30)
printDosukoi("山田", 42)
printDosukoi("たかし", 8)
}
fun printDosukoi(name: String, age: Int) {
println(name + "さん(" + age + "歳)が言った")
println("どすこい!")
println("どやさ!")
println("どげんかせんといかん!")
}
これを実行すると・・・
今回はここまでです!
自分で作った関数で引数を受け取る方法、いかがでしたか?
次回はプログラムの中での分岐処理、「if」についてお話したいと思います。
次回へ続く。