我有以下类,其中属性是Option[T]
类用户扩展 IdBaseEntity[UUID] { 变量 ID:选项 [UUID] = 无 变量名称:选项 [字符串] = 无 var createdOn: 选项 [日期] = 无 }
在某些数据访问层中,如果在将对象持久保存到 cassandra 之前未设置这些属性,我需要分配这些属性。这里有几种方法可以使用该createdOn
属性。这些是最好的方法还是我应该做的更好?
示例 1
entity.createdOn = Some(entity.createdOn.map(identity).getOrElse(new Date()))
示例 2
entity.createdOn = entity.createdOn.orElse(Some(new Date()))
示例 3
entity.createdOn = entity.createdOn 匹配 { case None => Some(new Date()) case _ => entity.createdOn }
示例 4
entity.createdOn = entity.createdOn 匹配 { case None => Some(new Date()) 案例一些(x) => 一些(x) }
示例 5
entity.createdOn 匹配 { case None => entity.createdOn = Some(new Date()) 案例_ =>; }