[解決済み] メソッド外エラー
2022-02-02 05:18:13
質問
boolean openingboard;
{
Robot robot = new Robot();
Color color3 = new Color(108, 25, 85);
Rectangle rectangle = new Rectangle(0, 0, 1365, 770);
while(true)
{
BufferedImage image = robot.createScreenCapture(rectangle);
search: for(int x = 0; x < rectangle.getWidth(); x++)
{
for(int y = 0; y < rectangle.getHeight(); y++)
{
if(image.getRGB(x, y) == color3.getRGB())
{
System.out.println("About to finish and return true");
return true;
}
System.out.println("About to finish and return false");
}
}
}
}
というエラーが発生します。 java:71: メソッド外の戻り値
真を返す
^
何が起こっているのかわからない。
どうすればいいですか?
上記のコメント回答から推測すると、あなたは以下のように考えているのではないでしょうか。
boolean openingboard;
{
return true;
}
というJavaメソッドを定義しています。
openingboard
. これは違うんです。 JavaはC言語のパラダイムに従って、パラメータがあるかないかに関わらず、パラメータを括弧で指定することを要求しています。 ですから、メソッド
boolean openingboard() {
return true;
}
は有効なJavaメソッドであり(何らかのクラス内にあると仮定)、同様に
openingboard
中括弧の間にさらに多くのコードが含まれています。
というわけで、Javaのスタイルについて、いくつか親切に指南してあげよう。
-
Java(そしてほとんどの高級言語)のプログラマは、次のような "forever"ループを嫌う傾向があります。
while (true)
なぜなら、そのようなループは、ループが実際に停止するタイミングを判断するのが非常に難しくなるからです。 -
というラベルは必要ありません。
search
このコードでは、ラベルは永遠ループよりもさらに推奨されません。
そこで、次のようなコードに書き換えることをお勧めします。
private boolean openingboard() {
Robot robot = new Robot();
Color color3 = new Color(108, 25, 85);
Rectangle rect = new Rectangle(0, 0, 1365, 770);
BufferedImage image = robot.createScreenCapture(rect);
for(int x = 0; x < rectangle.getWidth(); x++) {
for(int y = 0; y < rectangle.getHeight(); y++) {
if(image.getRGB(x, y) == color3.getRGB())
return true;
}
}
return false;
}
もちろん、デバッガでプリントをトレースすることを好むと仮定しての話ですが。
関連
-
[解決済み] return, return None, and no return at all?
-
[解決済み] メソッドと関数の違いは何ですか?
-
[解決済み] Eclipseにプロジェクトをインポートした後に「Must Override a Superclass Method」エラーが発生する。
-
[解決済み] JavaScriptで複数の値を返す?
-
[解決済み] C#でメソッドをパラメータとして渡す
-
[解決済み] モックされたメソッドに渡された引数を返すようにする
-
[解決済み] メソッドの戻り値の型を汎用的にするにはどうすればよいですか?
-
[解決済み] メソッド呼び出し元へ複数の値を返す
-
[解決済み] 現在実行中のメソッド名の取得
-
[解決済み】既存のオブジェクトインスタンスにメソッドを追加する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】このコンパイルユニットは名前付きモジュールに関連しているため、名前付きパッケージeclipseを宣言する必要があります。
-
[解決済み】popBackStack()とreplace()の操作はどう違うのですか?
-
[解決済み】HTTPステータス500 サーブレットクラスのインスタンス化エラー [重複]。
-
[解決済み】非閉鎖文字リテラルエラー
-
[解決済み】java 'jar'が内部コマンドまたは外部コマンドとして認識されない。
-
[解決済み】Javaを使用するSelenium - ドライバの実行ファイルのパスは、webdriver.gecko.driverシステムプロパティで設定する必要があります。
-
[解決済み】破損したjarファイル
-
[解決済み] java.sql.SQLException を取得しました。ResultSet が終了した後の操作は許可されません。
-
[解決済み】Javaの未処理例外について
-
[解決済み] "java.nio.charset.MalformedInputException" を避けるために、すべての包括的なCharset。入力の長さ= 1"?