java - java中比较颜色

标签 java colors awt awtrobot

注意:robot.getcolor(int i, int j) 只是 return robots.getPixelColor(i,j);

void test2(int i, int j)
{
    System.out.println(robot.getcolor(i,j));
    Color a = robot.getcolor(i,j);
    Color b  = new Color(91,108,201);
    if(a == b)
    {
        System.out.println("success!");
    }
    else
    {
        System.out.println("FAILURE");
    }
}

如果我这样做,那么我会得到这个输出:

java.awt.Color[r=91,g=108,b=201]

FAILURE

我已经测试过的内容:

  • 使用 == 比较两种颜色。

  • Alpha 参数应该不是问题,因为它是 255,如果我将其添加到新的 Color(91,108,201,255) 中,它仍然会打印出 FAILURE。

最佳答案

尝试将第 6 行更改为 if(a.equals(b)) {

== 比较两个对象是否是同一个对象
.equals() 比较两个对象是否相等(由特定类定义)
查看this了解更多信息

关于java - java中比较颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32075571/

相关文章:

java - 按键不起作用

java - “javac”未被识别为内部或外部命令

Java - Mac 和 Windows 之间的文件 getFreeSpace 区别

java - 自动生成的邮件

java - 无法设置面板的背景颜色

css - Flex - 文本颜色的可见阴影

Java GridLayout 将我所有的 JPanel 布局在左上角

java - 按钮/JPanel 网格显示不正确

java - Joda 日期时间 : Capture Date time(UTC) and convert to byte/byte array

linux - 如何在 bash 脚本中为命令输出着色?