我對scala非常陌生,基本上我希望有一些函數與散列表中的字符串耦合。 但是,我在subscribers.get(e.key)(e.EventArgs)處得到一個錯誤;說明選項[EventArgs的=>單位]不帶參數... 示例代碼:如何從Scala中的hashmap調用函數
object Monitor {
val subscribers = HashMap.empty[String, (EventArgs) => Unit ]
def trigger(e : Event){
subscribers.get(e.key)(e.EventArgs);
}
def subscribe(key: String, e: (EventArgs) => Unit) {
subscribers += key -> e;
}
}
在'地圖'上使用地圖是IMO的正確方法。它可以避免模式匹配和NoSuchElementException – AndreasScheinert