在BuffereImage Java中找不到颜色时停止脚本

在BuffereImage Java中找不到颜色时停止脚本,java,if-statement,while-loop,bufferedimage,Java,If Statement,While Loop,Bufferedimage,我目前有一个脚本,它获取一个区域的屏幕盖并搜索该区域中的每个颜色值。但是,我希望在图像的任何区域中都找不到特定颜色时脚本停止运行。我当前的脚本在像素颜色不正确时停止,这不是我想要的 import java.awt.*; import java.awt.image.BufferedImage; public class Main { public static void main(String args[]) throws AWTException { int i = 0

我目前有一个脚本,它获取一个区域的屏幕盖并搜索该区域中的每个颜色值。但是,我希望在图像的任何区域中都找不到特定颜色时脚本停止运行。我当前的脚本在像素颜色不正确时停止,这不是我想要的

import java.awt.*;
import java.awt.image.BufferedImage;

public class Main {
    public static void main(String args[]) throws AWTException {
        int i = 0;
        while (i < 1){
        BufferedImage image = new Robot().createScreenCapture(new Rectangle(Toolkit.getDefaultToolkit().getScreenSize()));
        BufferedImage image2 = new Robot().createScreenCapture(new Rectangle(70, 102,200,222));
\        for (int y = 0; y < image2.getHeight(); y++) {
            for (int x = 0; x < image2.getWidth(); x++) {
                Color pixcolor = new Color(image2.getRGB(x, y));
                int red = pixcolor.getRed();
                int green = pixcolor.getGreen();
                int blue = pixcolor.getBlue();
                System.out.println("Red  = " + red);
                System.out.println("Green  = " + green);
                System.out.println("Blue  = " + blue);

                if (red == 253 && green == 222 && blue == 131){
                            continue;
                        }
                        else {
                            System.out.println(x);
                            System.out.println(y);
                            i ++;
                            System.exit(1);;
                        }

    }
}}}}
import java.awt.*;
导入java.awt.image.buffereImage;
公共班机{
公共静态void main(字符串args[])引发AWTException{
int i=0;
而(i<1){
BuffereImage image=new Robot().createScreenCapture(新矩形(Toolkit.getDefaultToolkit().getScreenSize());
BuffereImage image2=new Robot().CreateScreateScreenCapture(新矩形(70102200222));
\对于(int y=0;y
我想做点像这样的工作。基本上我只是用布尔“isFound”来记忆 如果在图片中找到颜色,如果没有,则while循环结束

import java.awt.*;
import java.awt.image.BufferedImage;

public class Main {
    public static void main(String args[]) throws AWTException {
        boolean isFound = false; // before was Boolean isNotFound = true;
        while (!isFound) {
            BufferedImage image = new Robot().createScreenCapture(new Rectangle(Toolkit.getDefaultToolkit().getScreenSize()));
            BufferedImage image2 = new Robot().createScreenCapture(new Rectangle(70, 102, 200, 222));
            isFound = false;
            for (int y = 0; y < image2.getHeight(); y++) {
                for (int x = 0; x < image2.getWidth(); x++) {
                    Color pixcolor = new Color(image2.getRGB(x, y));
                    int red = pixcolor.getRed();
                    int green = pixcolor.getGreen();
                    int blue = pixcolor.getBlue();
                    System.out.println("Red  = " + red);
                    System.out.println("Green  = " + green);
                    System.out.println("Blue  = " + blue);

                    if (red == 253 && green == 222 && blue == 131) {
                        isFound = true;
                        break;
                    }


                }
                if (isFound) break;
            }
        }
    }
}
import java.awt.*;
导入java.awt.image.buffereImage;
公共班机{
公共静态void main(字符串args[])引发AWTException{
boolean isNotFound=false;//之前是boolean isNotFound=true;
而(!isFound){
BuffereImage image=new Robot().createScreenCapture(新矩形(Toolkit.getDefaultToolkit().getScreenSize());
BuffereImage image2=new Robot().CreateScreateScreenCapture(新矩形(70102200222));
isFound=false;
对于(int y=0;y
很明显,我在那个代码中将isFound声明为isNotFound是偶然的。因此,如果您只是将isNotFound更改为isfound,我对Java是新手。虽然我认为代码应该可以工作,但它似乎不能工作?