【发布时间】:2019-05-15 04:48:36
【问题描述】:
我有一个 Map[String, Info] 的映射,它包含可以是大写或小写的键,如下所示:
person1: PersonInfo1
person2: PersonInfo2
PERSON1: PersonInfo1
我想获取键 'person1' 的值,如果没有找到,我将尝试使用键 'PERSON1',我尝试了以下代码:
val info = map.get(key) match {
case Some(personInfo) => personInfo
case None =>
map.get(key.toUpperCase()) match {
case Some(personInfo) => personInfo
case None => None
}
}
但是这个返回信息作为具有可序列化的产品类型,我怎样才能将信息作为 PersonInfo 类型返回? Scala中有没有一种方法可以让我按键从地图中获取价值并忽略按键的情况?
【问题讨论】: