一个方法可以和不同变量的输入/输出

时间:2012-02-10 04:39:55

标签: java methods input

方法是:

Robot robot = new Robot();
Color inputColor = new Color();

Rectangle rectangle = new Rectangle(0, 0, 1365, 770);

    BufferedImage image = robot.createScreenCapture(rectangle);
    for(int x = 0; x < rectangle.getWidth(); x++) 
    {
        for (int y = 0; y < rectangle.getHeight(); y++) 
        {
            if (image.getRGB(x, y) == inputColor.getRGB()) 
            {
            robot.mouseMove(x, y);
            break;
            }
        }
    }
return;
}

我想用Color的值调用该方法让它搜索该颜色的屏幕截图并返回该像素的(x,y)值,如果找到它可以发生或者方法只有一个输入输出必须相同?

3 个答案:

答案 0 :(得分:0)

方法输入和输出可能不同,但它不能返回多个类型(或)值,x或y。如果你想返回x,y。您可能需要返回数组(或)您可以拥有类似下面的POJO类,将x,y设置为该类的实例并返回。

Dimension
{
int x;
int y;

setter..
getter..
}

答案 1 :(得分:0)

您可以这样做:

Point methodName(Color color) {
    Point p = new Point();
    // logic for finding point
    return p; // or perhaps return null if color not found
}

你也可以只返回一个两元素int[]而不是一个点。

答案 2 :(得分:0)

您可以使用x和y值返回java.awt.Point或使用int数组,如果没有问题。