同事,是否可以根据您的条件(值的存在)动态创建带有键的映射?
例如对于一个对象Person
:
case class Person(name: String, surname: String, age: Int)
用键做地图,但不是全部,而是根据一定的条件。就像是:
val p1 = Person("Вася", "", "35")
Map(
if (p1.name.nonEmpty()) "name" -> p1.name,
if (p1.surname.nonEmpty()) "surname" -> p1.surname,
"age" -> p1.age.toString
)
因此,对于 object p1
,您应该得到一个不是三个,而是两个键的映射:
Map("name" -> "Вася", "age" -> "35")
姓氏键丢失
像这样?