見出し画像

戻り値について vol.30

前回は引数について説明した。今回は戻り値について。

public static 戻り値の型 メソッド名(引数リスト){
 実行文

staticの後の部分だ。いつもはここをvoidにしている。

その部分について説明していこう。

1.戻り値とは

戻り値とはざっくりいうと、メソッドを呼び出し、そのメソッドの処理が終わったときに値を返してくれること

詳しく説明していこう。

引数では、値を渡すことができた。戻り値とはメソッドを呼び出した後に処理を行い、値を返してくれるもののこと。

戻り値は、データ型で指定してそのデータ型の値を返してくれる。値を受け取るために、そのデータ型に合う変数を呼び出す側のメソッドで宣言する。

どのようのな構文になるのか書いてみよう。

2.戻り値の書き方

呼び出す側

データ型 変数名 = 呼び出すメソッド名(引数);

呼び出される側

public static 戻り値の型 メソッド名(引数リスト){
 実行文
 return 戻り値  ⇐戻り値の型と同じデータ型変数

returnで値を返してくれる。返す値はpublic static 後の戻り値の型とデータ型を合わせる。戻り値の型がString型であればreturnの後ろにString型の値を返す。
int型であればreturnの後ろにint型の値を返す。

受け取る側戻り値の型String型であれば、String型の変数を宣言し戻り値を受け取る。

実際に例を出そう。

3.実際に書いてみよう

引数で10と50を渡して足し算させる文を作ろうと思う。

できればどういった流れでコンソールに表示させるか、考えながら見てほしい。

public static void main(String[] args) {
 int ans = add(10 , 50);
 System.out.println(ans);
 }
public static int add(int x , int y) {
 int answer = x + y;
 System.out.print("10 + 50 = ");
 return answer;
}

コンソールに表示させる前に流れを書いていこう。

int ansで戻り値を受け取る準備をし、addメソッドに引き数を渡し呼び出している。

addメソッドの実行文のところに入る。xには10、yには50が引数で入った。
足し算をし変数answerには60が入った。

System.out.print("10 + 50 = ");で改行無しで、コンソールに表示させreturnでanswerをmainメソッドの変数ansに返す。

コンソールに先に改行無しの10 + 50 =が表示されているため、そのあとにansの値がコンソールに表示される。

実際にコンソールに表示させると

10 + 50 = 60

となる。

addメソッドにSystem.out.print("10 + 50 = ");を書いたが、mainメソッドにSystem.out.println("10 + 50 = " + ans);と書いても結果は同じ。

これがint型が戻り値の場合の書き方だ。String型の場合も受け取る側の変数を合わせてString型の戻り値を返してあげるだけ。

これが、戻り値の書き方だ。

例えば呼ばれる側のメソッドでreturnと戻り値を書かないとエラーになる。

キャプチャ630

このようにメソッドから引数にかけて赤い波線が出ているが、returnと戻り値を書いてというエラーだ。

ここで思うことがあると思う。

今まで使用していた戻り値のvoidではreturnしなくてもエラーなっていなかった。なぜ?

4.voidについて

voidとは、何なのか。

今まで使っていてなんとなく想像できるかもしれないが、voidとは戻り値無しということ。voidは「何もないという意味」戻り値がいらない場合はvoidを使用する。

今回は以上。

では、また次回
元体育会系文系エンジニア石黒


この記事が気に入ったらサポートをしてみませんか?