以下が、return の記述例になります。
戻り値の型 メソッド名(){
処理;
return 値;
}
return 文が指定されているメソッドでは、必ず戻り値の型を指定しなければなりません。この戻り値の型によって返却できる値の型が指定されます。例えば、「int 型」を指定すれば、「int 型」の値が返却出来、「String 型」を指定すれば、「String 型」を返却出来ます。
以下は、戻り値に「int 型」と「String 型」が存在し、その各々のメソッドを呼び出すメインメソッドがあるプログラムの例です。
public class ReturnTest {
public static void main(String[] args) {
new ReturnTest();
}
public ReturnTest() {
System.out.println(this.intM());
System.out.println(this.stringM());
}
//int型を返すメソッドの作成
public int intM() {
int i = 10;
//iの値を返します。
return i;
}
//String型を返すメソッドの作成
public String stringM() {
String str = "ストリングの文字列が返りました。";
//strの値を返します。
return str;
}
}
以下が実行結果です。
10 ストリングの文字列が返りました。
メソッドには必ず戻り値がなければいけない。何てことはありません。そこで戻り値のないメソッドには、「void」を戻り値の型として記述します。
以下が、「void」を使った戻り値がないプログラムの例です。
public class ReturnTest {
public static void main(String[] args) {
new ReturnTest();
}
public ReturnTest() {
this.voidM();
}
//戻り値の無いメソッドの作成。
public void voidM() {
String str = "戻り値の無いメソッドです。";
System.out.println(str);
return ;
}
}
以下が実行結果です。
戻り値の無いメソッドです。
void など戻り値を持たない(値を返さない)メソッドでは、return文は省略可能 です。以下がそのプログラムの例です。
public class ReturnTest {
public static void main(String[] args) {
new ReturnTest();
}
public ReturnTest() {
this.voidM();
}
//戻り値の無いメソッドの作成。
public void voidM() {
String str = "戻り値の無いメソッドです。";
System.out.println(str);
}
}
上記のように記述すると戻り値の無い場合、「return」文を記述しなくても呼び出し元のメソッドに制御を返すことが出来ます。