カテゴリ: Kotlin 更新日: 2025/07/10

Kotlinの戻り値の書き方とUnit型の意味をやさしく解説

Kotlinの戻り値の書き方とUnit型の意味をやさしく解説
Kotlinの戻り値の書き方とUnit型の意味をやさしく解説

先生と生徒の会話形式で理解しよう

生徒

「Kotlinの関数を少しずつ覚えてきたんですが、『戻り値』って何ですか?よく分からなくて……」

先生

「戻り値は、関数の処理が終わったあとに、結果を返す仕組みのことですよ。」

生徒

「返す?どこに返すんですか?あと、Unitって何ですか?空っぽって意味ですか?」

先生

「とても大事なところですね。Kotlinの戻り値の書き方とUnit型の意味について、分かりやすく説明していきますね!」

1. 戻り値(もどりち)とは?

1. 戻り値(もどりち)とは?
1. 戻り値(もどりち)とは?

関数は、ある処理をして、その「結果」を返すことがあります。このときの「結果」のことを「戻り値(もどりち)」といいます。

たとえば、数字を2つ足して、その合計を返す関数があるとします。この合計が「戻り値」です。

2. 戻り値を返す関数の書き方

2. 戻り値を返す関数の書き方
2. 戻り値を返す関数の書き方

Kotlinで戻り値を返す関数を作るときは、関数の名前のあとに「: 型(たとえば Int や String など)」を書きます。

そして、returnというキーワードで、返す値を書きます。


fun add(a: Int, b: Int): Int {
    return a + b
}

fun main() {
    val result = add(3, 5)
    println("合計は $result です")
}

合計は 8 です

add関数は、2つの整数abを足して、その結果(a + b)を戻り値として返しています。

3. 戻り値の型とは?

3. 戻り値の型とは?
3. 戻り値の型とは?

戻り値の「型」とは、返すデータがどんな種類なのかを表します。たとえば:

  • Int → 整数(1, 100など)
  • String → 文字列("こんにちは" など)
  • Boolean → 真か偽(true / false)

関数が返す値が数字なら: Int、文字列なら: Stringのように書きます。

4. 戻り値がないときのUnit型とは?

4. 戻り値がないときのUnit型とは?
4. 戻り値がないときのUnit型とは?

関数によっては、値を返さず、ただ処理だけを実行する場合もあります。そのときに使うのがUnitという型です。

「何も返さない」という意味で、Javaのvoidに近い役割です。


fun sayHello(): Unit {
    println("こんにちは!")
}

fun main() {
    sayHello()
}

こんにちは!

このように、sayHello()はメッセージを表示するだけで、何も返していません。

5. Unit型は省略できる?

5. Unit型は省略できる?
5. Unit型は省略できる?

実はKotlinでは、戻り値がUnitのときには、: Unitの部分を省略しても問題ありません。

次のコードは、先ほどと同じ意味です。


fun sayHello() {
    println("こんにちは!")
}

Kotlinでは、Unitは特別な型で、書かなくても自動的に判断されるためです。

6. 戻り値を活用するイメージ

6. 戻り値を活用するイメージ
6. 戻り値を活用するイメージ

戻り値は、料理の注文と料理の提供にたとえられます。

  • 注文(関数を呼び出す)
  • 料理(関数が処理を行う)
  • 料理を受け取る(戻り値を受け取る)

「ハンバーグ定食をください!」と注文したら、ハンバーグ定食が出てくる。それと同じで、関数を呼び出すと「結果」が返ってきます。

7. Kotlinで戻り値を使うと便利な場面

7. Kotlinで戻り値を使うと便利な場面
7. Kotlinで戻り値を使うと便利な場面

戻り値は、次のような場面でとても役立ちます。

  • 数値の計算をして、その結果を使いたいとき
  • 文字列を加工して、新しい文章を作るとき
  • 条件によって結果を判断したいとき(true / false)

たとえば、名前を受け取って、あいさつの文を作る関数を考えてみましょう。


fun createMessage(name: String): String {
    return "こんにちは、$name さん!"
}

fun main() {
    val msg = createMessage("ゆうき")
    println(msg)
}

こんにちは、ゆうき さん!

このように、関数の結果を変数に入れて、あとから使うことができます。

カテゴリの一覧へ
新着記事
Go言語の関数でエラーハンドリングする基本的な方法
Go言語のスライス・マップ・配列をまとめて比較してみよう!初心者でもわかる使い分けの基本
Go言語の条件分岐の見やすい書き方を徹底解説!初心者でもわかるif文の使い方
Go言語とは何か?初心者向けに特徴・できること・インストール手順までやさしく解説
人気記事
No.1
Java&Spring記事人気No1
Swift Playgroundの使い方を完全解説!初心者に最適な学習環境の始め方
No.2
Java&Spring記事人気No2
Go言語で条件式を1行で書くコツ!三項演算子の代替と短縮記法
No.3
Java&Spring記事人気No3
Swift開発環境の構築方法を徹底解説!Xcode・Windows・Linux対応
No.4
Java&Spring記事人気No4
Kotlinのデータクラス(data class)とは?便利な特徴と使い方を初心者向けにやさしく解説!