#9 Kotlinで学ぶ関数の基本
Kotlinの関数は、Javaのメソッドと違い、クラスの外に単体で書けるのが特徴です。この記事では、Kotlinにおける関数の基本と、デフォルト引数・名前付き引数といった便利な機能を解説します。
関数を作ってみる
Kotlinでは`fun`というキーワードを使います。
fun greet(name: String) {
println("こんにちは、${name}さん")
}
値を返す関数
fun add(a: Int, b: Int): Int {
return a + b
}
簡潔に書ける式形式の関数
処理が1行で済む場合、Kotlinには波かっこと`return`を省略できる、簡潔な書き方があります。
fun add(a: Int, b: Int): Int = a + b
戻り値の型はコンパイラが推論できるため、`: Int`の部分も省略可能です。
デフォルト引数
Kotlinでは、引数にあらかじめ既定値を設定しておくことができます。呼び出し側でその引数を省略すると、既定値が使われます。
fun greet(name: String, honorific: String = "さん") {
println("こんにちは、${name}${honorific}")
}
greet("太郎") // こんにちは、太郎さん
greet("太郎", "先生") // こんにちは、太郎先生
これはJavaにはない機能で、Javaで似たことをするには複数のオーバーロードされたメソッドを用意する必要がありましたが、Kotlinなら1つの関数定義で済みます。
名前付き引数
引数が多い関数を呼び出すときは、引数名を指定して渡すこともできます。順序を気にせず渡せるため、可読性が上がります。
greet(name = "太郎", honorific = "先生")
Kotlinならではの注意点
Javaと違い、Kotlinの関数はクラスの外に自由に書けます。Java経験者は「クラスなしで関数が書けるのか」と驚くかもしれませんが、これはKotlinがJavaより柔軟な設計になっている部分です。もちろん、これまで通りクラスの中にメソッドとして書くこともできます。デフォルト引数と名前付き引数を組み合わせると、設定用のクラス(Builder パターン)を用意しなくても読みやすい関数呼び出しができるようになるため、積極的に活用したい機能です。
まとめ
Kotlinの関数は`fun`で定義し、式形式を使うと簡潔に書けます。デフォルト引数・名前付き引数を使いこなすことで、Javaよりも柔軟で読みやすいコードが書けるようになります。
本ページはプロモーションを含みます。
参考書籍(PR)
Kotlinをもっと学びたい方には「やさしいKotlin入門」がおすすめです。
PR
コードを書かずに自動化したい方へ
「学んだけど自分の作業に組み込む時間がない」という方向けに、ダブルクリックで動く Windows専用の自動化ツールをオーダーメイドで作成しています。気になる方は こちらをご覧ください。
コメント
コメントを投稿