戻り値
関数で処理した結果を、関数を呼び出す側に渡すためには戻り値を指定します。戻り値は戻すデータのデータ型を、戻り値のデータ型として指定します。
関数の定義内でデータを呼び出し側に戻すには次のように指定します。
戻り値指定の書式 |
---|
retrun 式; |
これから、戻り値を指定するいくつかのパターンを見てみましょう。
■ 戻り値を指定しない
戻り値を指定しない場合は戻り値の型を「void」と指定します。
○ ファイル
次のようにファイルを作成してください。
ファイル名 | ReturnTest1.java |
---|
○ プログラム
次のようにプログラムを入力してください。
ReturnTest1.java
- import java.io.*;
- class ReturnTest1{
- //戻り値を返さない関数
- public static void add(int num1, int num2){
- System.out.println("合計:" + (num1 + num2));
- }
- public static void main(String[] args) throws Exception{
- //データを入力する準備をする
- BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
- //データを入力する
- System.out.print("数値1:");
- int data1 = Integer.parseInt(br.readLine());
- System.out.print("数値2:");
- int data2 = Integer.parseInt(br.readLine());
- //関数の呼び出し
- add(data1, data2);
- }
- }
○ コンパイルと実行
C:¥work>javac ReturnTest1.java
C:¥work>java ReturnTest1
数値1:20
数値2:30
合計:50
C:¥work>
○ フローチャート
○ 解説
5~7行目では、関数を定義しています。この関数は仮引数を二つ用意しています。整数値を受け取ります。そして、戻り値は「void」と指定しているので、ありません。2つの整数を加算し、表示して呼び出し元に戻ります。
今回はmain関数で加算したい数値を入力しています。add関数を呼び出す時に加算したい二つの入力データを渡しています。今回は、計算と表示をadd関数が担当しています。
■ 戻り値を指定する
戻り値は一つ指定することができます。戻り値を指定する場合は、関数の定義で戻り値のデータ型を指定します。
○ ファイル
次のようにファイルを作成してください。
ファイル名 | ReturnTest2.java |
---|
○ プログラム
次のようにプログラムを入力してください。
ReturnTest2.java
- import java.io.*;
- class ReturnTest2{
- //戻り値を返す関数
- public static int add(int num1, int num2){
- return num1 + num2;
- }
- public static void main(String[] args) throws Exception{
- //データを入力する準備
- BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
- //データを入力
- System.out.print("数値1:");
- int data1 = Integer.parseInt(br.readLine());
- System.out.print("数値2:");
- int data2 = Integer.parseInt(br.readLine());
- //関数の呼び出し
- int answer = add(data1, data2);
- //処理結果を表示
- System.out.println("合計:" + answer);
- }
- }
○ コンパイルと実行
C:¥work>javac ReturnTest2.java
C:¥work>java ReturnTest2
数値1:40
数値2:60
合計:100
C:¥work>
○ フローチャート
○ 解説
5~7行目では、関数を定義しています。この関数は仮引数を二つ用意しています。整数値を受け取ります。そして、戻り値の型は「int」と指定しているので整数値が返ります。2つの整数を加算し、呼び出し元にその結果を返します。
今回はmain関数で加算したい数値を入力しています。add関数を呼び出す時に加算したい二つの入力データを渡しています。今回は、計算をadd関数が、計算結果の表示をmain関数が担当しています。