• ベストアンサー

同色かどうかの確認(Colorクラス)

java.awt.Colorについて、お尋ねします。 別々のColorオブジェクトが、同じ色であるかどうか、 簡単に判定する方法はないでしょうか? 現在、赤・青・緑・アルファ値が、同じ値であるかチェックして、判定を行っていますが、 他の方法をご存知の方、同じような体験をされた方、ご教授下さい。 なければないというアドバイスでもかまいません。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • luckymako
  • ベストアンサー率55% (29/52)
回答No.1

これでいいと思います。 Color c1 = new Color(1f, 0f, 0f, 1f); Color c2 = new Color(0f, 1f, 0f, 1f); Color c3 = Color.RED; if(c1.equals(c2))   System.out.println("c1 == c2"); else   System.out.println("c1 != c2"); if(c1.equals(c3))   System.out.println("c1 == c3"); else   System.out.println("c1 != c3"); 結果は c1 != c2 c1 == c3

namida6000
質問者

お礼

ありがとうございます。 equalsで大丈夫なんですね! 勉強不足でした。

その他の回答 (1)

  • PED02744
  • ベストアンサー率40% (157/390)
回答No.2

素直にequals では比較できませんでしたか? public static void main(String[] args) { Color col1 = new Color(1,2,3,4); Color col2 = new Color(1,2,3,4); System.out.println("color1=" + col1.toString()); System.out.println("color2=" + col2.toString()); if( col1.equals(col2)){ System.out.println("match"); }else{ System.out.println("unmatch"); } } 別インスタンスであっても"match"になるはずですが?

namida6000
質問者

お礼

早く回答を頂いた方を、最良とさせていただきました。 equalsが大丈夫だと、思ってもおりませんでした。 コードまで書いていただきありがとうございました。

関連するQ&A