首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >更新嵌套结构的更干净的方法

更新嵌套结构的更干净的方法
EN

Stack Overflow用户
提问于 2010-10-10 20:37:05
回答 6查看 25.1K关注 0票数 126

假设我有以下两个case classE:

代码语言:javascript
复制
case class Address(street: String, city: String, state: String, zipCode: Int)
case class Person(firstName: String, lastName: String, address: Address)

以及Person类的以下实例:

代码语言:javascript
复制
val raj = Person("Raj", "Shekhar", Address("M Gandhi Marg", 
                                           "Mumbai", 
                                           "Maharashtra", 
                                           411342))

现在,如果我想要更新rajzipCode,那么我必须这样做:

代码语言:javascript
复制
val updatedRaj = raj.copy(address = raj.address.copy(zipCode = raj.address.zipCode + 1))

随着嵌套级别的增加,这会变得更加丑陋。有没有一种更干净的方式(类似Clojure的update-in)来更新这种嵌套结构?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3900307

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档