0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Java入門】引数・戻り値とは?RPGの勇者でわかりやすく解説🌱

0
Last updated at Posted at 2026-04-02

🟢 はじめに

Javaを学んでいて、「引数(ひきすう)」や「戻り値もどりち)」という言葉のイメージが湧かず、つまずいた経験はありませんか?🤔

メソッドの「引数」と「戻り値

この2つがわかると、ただコードを書くだけだったのが、まるでプログラムと「会話」しているような感覚に変わります✨

難しく聞こえるかもしれませんが、実はとてもシンプルです。

この関係は、RPGの勇者への「お願い(インプット)」と、勇者からの「報告(アウトプット)」のキャッチボールだと考えると、理解しやすくなると思います⚾️

さっそく、勇者と一緒に紐解いていきましょう!

🟨 引数(ひきすう)= 勇者への「材料・指示」

引数とは、メソッド(勇者の行動)を呼び出すときに、カッコ () の中に入れるデータのことです。

例えるなら、勇者に「これを材料として使ってね!」「この相手を狙ってね!」と手渡す荷物指示書のようなものです📜

🛒 例:買い物メソッド

勇者に「薬草を買ってきて!」とお願いする場合、タダでは買えませんよね。
お金」を渡す必要があります。

//              ↓ これが引数(勇者に渡すお金=材料)
void buyItem(int money) {
    System.out.println(money + "ゴールドを使って、薬草を買いました!🌿");
}
  • 呼ぶとき: h1.buyItem(50); (50ゴールドを引数として渡す)

  • イメージ: あなた ➔ [50ゴールド] ➔ 勇者

🎁 戻り値(もどりち)= 勇者からの「お返し・報告」

戻り値とは、メソッドの処理が終わったあと、呼び出し元(お願いしたあなた)に返ってくるデータのことです。

例えるなら、勇者からの「結果報告」や「手に入れたお宝」ですね💰

戻り値がある場合は、メソッド名の前に「何を返すか(データの型)」を書き、最後に return を使って結果を返します。

📊 例:ダメージ計算メソッド

勇者に「今の攻撃でどれくらいダメージを与えたか教えて!」と聞く場合です。

//   ↓ int型の数字(ダメージ量)を返すよ!という宣言
int calculateDamage() {
    int damage = 15; 
    return damage; // ← これが「お返し(報告)」の実行!
}
  • 呼ぶとき: int result = h1.calculateDamage();
  • イメージ: 勇者 ➔ [15ダメージという数字] ➔ あなたの用意した箱(変数 result)へ

🔄 究極のキャッチボール:引数 + 戻り値

それでは、「材料を渡して、結果をもらう」というフルセットのやり取りを見てみましょう!

魔物の名前を教えるから、そいつを倒して経験値を報告して!」という依頼です⚔️

class Hero {
    // String型の材料(enemy)をもらって、int型の結果(exp)を返す
    int battle(String enemy) {
        System.out.println(enemy + " と戦った! ⚔️");
        int exp = 100; // 経験値100ゲット
        return exp;    // 経験値をあなたに返す
    }
}
// 実行シーン
public static void main(String[] args) {
    Hero h1 = new Hero("アルス");
    
    // 「スライム」を投げて、返ってきた「100」を totalExp に入れる
    int totalExp = h1.battle("スライム");
    
    System.out.println("合計経験値は " + totalExp + " になった!✨");
}

この流れを分解すると、
ちゃんとキャッチボールになっていることが分かると思います⚾️

  1. 投げる(引数): あなたが battle("スライム") という形でバトル相手を指定して投げる。

  2. 実行(メソッド内): 勇者がメソッドの中で戦う。

  3. 打ち返す(戻り値): 勇者が return exp; で経験値を投げ返す。

  4. 受け取る: あなたが int totalExp = ... でその数字をしっかりキャッチする!

📝 まとめ:じゃあ「ボイド(void)」って何だったの?

メソッドの最初によく付いている void

実はこれ、「お返し(戻り値)なし!」という意味です。

  • intString が書いてある場合:「終わったら、この型のデータを報告します!」というお約束。
  • void が書いてある場合::「報告(お返し)は不要です!」という合図。

ただ攻撃して終わり(画面に表示するだけ)」なら void でOKですが、
攻撃した結果、相手を倒せたかどうか(true/false)」を知りたいなら戻り値が必要になる、というふうに使い分けるのがポイントです!🌟

同じように「引数・戻り値って何?」と悩んでいる方の参考になれば幸いです 🙌

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?