scala case class равно (==) не работает должным образом

Я должен здесь не хватает чего-то глупого. У меня есть следующее:

case class Color(val rgb:Int) {
   private val c = rgb - 0xff000000
   val r = (c & 0xff0000) >> 16
   val g = (c & 0x00ff00) >> 8
   val b = (c & 0x0000ff)
}

case object Red extends Color(0xffff0000)
case object Green extends Color(0xff00ff00)
case object Blue extends Color(0xff0000ff)

Тогда я ожидаю, что это напечатает true :

val c = Color(0xff00ff00)
println(c == Green)

Почему этого не происходит ??

7
задан Germán 23 August 2011 в 19:59
поделиться