Scala创建具有某些更改的对象的副本

示例

案例类提供了copy一种创建新对象的方法,该对象与旧对象共享相同的字段,但有某些更改。

我们可以使用此功能从以前的对象创建具有相同特征的新对象。这个简单的案例类演示了此功能:

case class Person(firstName: String, lastName: String, grade: String, subject: String)
val putu = Person("Putu", "Kevin", "A1", "Math")
val mark = putu.copy(firstName = "Ketut", lastName = "Mark")
// 标记:人物=人物(Ketut,Mark,A1,Math)

在此示例中,我们可以看到这两个对象具有相似的特征(grade = A1,subject = Math),除非在副本(firstName和lastName)中已指定它们。