判断两个对象相等?

24 阅读1分钟
object class04 {
  class Student(var name: String, var id: String, var age: Int) {

    override def equals(obj: Any): Boolean = {
      println("调用了equals...")
      println(this, obj)
      val other = obj.asInstanceOf[Student]
      this.name == other.name && this.id == other.id
    }
  }

  def main(args: Array[String]): Unit = {
    val stu1 = new Student("小花", "20230012", 18)
    val stu2 = new Student("小花", "20230012", 18)
    val stu3 = new Student("小花", "20230012", 18)

    println(stu1 == stu2)
    println(stu1 == stu3)
  }
}
```
```