ここでは Kotlin における「関数」の基本的な文法と使い方をまとめています。
関数の定義
関数は、以下のフォーマットで定義することができます。
フォーマット
fun 関数名(引数名: 引数の型): 戻り値の型 { 処理 }
関数は、キーワード fun で定義します。
単純関数
|
1 2 3 4 5 6 7 8 |
// 引数 x の二乗を返す関数 fun square(x: Int): Int = x * x fun main() { println(square(2)) } //>>> 4 |
複数処理を実行する関数
|
1 2 3 4 5 6 7 8 9 10 11 12 |
// 引数の Int 型配列の各要素の合計値を返す関数 fun sum(ints: Array<Int>): Int { var sum = 0 for (i in ints) sum += i return sum } fun main() { println(sum(arrayOf(1, 2, 3, 4, 5))) } //>>> 15 |
名前付き引数で関数を呼び出す
|
1 2 3 4 5 6 7 |
fun sub(x: Int, y: Int): Int = x - y fun main() { println(sub(x = 5, y = 3)) // 2 println(sub(y = 5, x = 3)) // -2 } |
関数を呼び出す際に、名前を指定して引数を与えることで順不同で引数を与えることができます。
デフォルト引数を持つ関数を定義
|
1 2 3 4 5 6 7 8 |
fun my_greeting(name: String = "Kotlin"): String = "Hello, $name!" fun main () { println(my_greeting()) // "Hello, Kotlin!" println(my_greeting("Sanachan")) // "Hello, Sanachan!" } 引数には、デフォルト値を指定することが出来ます。 |
引数が与えられなかったとき、デフォルト値を利用して処理を実行します。
可変長引数
|
1 2 3 4 5 6 7 8 9 10 11 |
fun sum(vararg ints: Int): Int { var sum = 0 for (i in ints) sum += i return sum } fun main() { val ints = intArrayOf(1, 2, 3, 4, 5) println(sum(*ints)) // 15 } |
キーワード vararg が付いた引数は、可変長引数となります。