0
正如问题所述,我想比较两种颜色使用它们的rgb值,但我想忽略alpha。 我没有得到那些位移和位智的操作符,所以你能告诉我有没有比下面的代码更优雅的方式来做到这一点?如何比较rgb值,忽略alpha
boolean compareRGB(Color c1, Color c2) {
return c1.getRed() == c2.getRed() && c1.getGreen() == c2.getGreen() && c1.getBlue() == c2.getBlue();
}
好像你可能想看看在使用'getColorComponents'方法(https://开头的文档。 oracle.com/javase/7/docs/api/java/awt/Color.html#getColorComponents(float [])),但传入一个空数组或另一个数组。它可能通过数组比较反而变得更简洁,但可能慢得可以忽略不计。 – Raizuri
所以我可以像'c1.getColorComponents(null).equals(c2.getColorComponents(null))'那样做? – Duke
有'getRGB',所以你可以一次比较R G和B – harold