Defining a Map from String to Function in Scala

前端 未结 5 926
粉色の甜心
粉色の甜心 2021-02-05 21:17

I am trying to define a Map literal with key: String, value: (Any)=>String. I tried the following, but get a syntax error:

def foo(x         


        
5条回答
  •  没有蜡笔的小新
    2021-02-05 21:28

    This is how I did it to fulfill a similar requirement.

    object MapToMethods {
    private def increment(x: Int): Int = x+1
    private def decrement(x: Int): Int = x-1
    
    val m: Map[String, Int => Int] =Map("increment" -> increment, "decrement" ->decrement)
    
    println(m("increment")(2)) //prints 3
    println(m("decrement")(3)) //prints 2
    }
    

提交回复
热议问题