1. ホーム
  2. java

[解決済み] Java の void メソッドで return キーワードは何をするのですか?

2023-08-19 05:30:26

質問

私が見ているのは パス検索チュートリアル を見ていて、私は return 文の中に void メソッド(クラス PathTest , 126行目)。

if ((x < 0) || (y < 0) || (x >= map.getWidthInTiles()) || (y >= map.getHeightInTiles())) {
    return;
}

私は、Javaの素人です。なぜそうなっているのか、どなたか教えていただけませんか?私が知っている限りでは return をvoidメソッドの中に書くことは許されません。

どのように解決するのですか?

その時点でメソッドを終了させるだけです。一度 return が実行されると、残りのコードは実行されません。

など。

public void test(int n) {
    if (n == 1) {
        return; 
    }
    else if (n == 2) {
        doStuff();
        return;
    }
    doOtherStuff();
}

コンパイラは賢いので、到達できないコードもあることを教えてくれることに注意してください。

if (n == 3) {
    return;
    youWillGetAnError(); //compiler error here
}