0
我已經編寫了下面的代碼來查找與某個鍵對應的值並將其作爲Double返回。Scala中的[Any]模式匹配
def getDouble (key: String, map: HashMap[String, _]) : Double = {
if (map contains key) {
val o = map get key
o match {
case Some(i: Int) => return i.asInstanceOf[Int].toDouble;
case Some(d: Double) => return d.asInstanceOf[Double];
case Some(s: String)
=> return augmentString(s.asInstanceOf[String]).toDouble;
case Some(int) => return o.asInstanceOf[Int].toDouble;
case Some(double) => return o.asInstanceOf[Double].toDouble;
case _ => return -1234567.00;
}
}
else {
return -1234567.00
}
}
是什麼case Some(int)
和case Some(i: Int)
之間的區別?
我是否需要同時使用case Some(int)
和case Some(i: Int)
來檢查int類型?
非常感謝您清除疑問。 –