开始使用Scala并寻找Orika模块,但是对于Scala。可以在Orika中创建自定义属性构建器,但是对于具有值字段的案例,我需要(使用Scala 2.10 +)反射字段(镜像)来设置不可变项。假设有一个Scala模块的原生方法?
答案 0 :(得分:0)
我知道Orika
有更多功能但是,如果您只想为新实例创建实例副本并更改新实例的某些属性,则scala具有内置功能。使用case classes
,您可以使用copy
方法创建新实例。
case class Bird(name: String, color: String)
scala> val chicken = Bird("twitty", "yellow")
chicken: Bird = Bird(twitty,yellow)
scala> val coq = chicken.copy(color = "red")
coq: Bird = Bird(twitty,red)