对函数里面的引用不太理解,和创建一个map的时候,value的值怎么是返回的一个方法呢?
来源:3-7 本章小结

宝慕林4277269
2021-03-11
val x:(Foo,String,Long) ->Any =Foo::bar
val x0:Function3<Foo,String,Long,Any> = Foo::bar
val y :(Foo,String,Long) ->Any = x
val z:Function3<Foo,String,Long,Any> = x
上面几个写法主要用来干什么,有什么用?
val operator = mapOf(
"+" to ::plus,
"-" to ::minus,
"*" to ::times,
"/" to ::divs)
val ops = args[1]
val opFunc = operator[ops] ?: return showHelp()
这里为什么opFunc又是一个函数啦,mapof里面的value怎么可以传一个函数进去呢,是什么意思啊?
写回答
2回答
-
bennyhuo
2021-03-12
前面的几个变量声明你如果不能理解的话,后面的肯定搞不懂。
你现在要搞清楚一件事儿,函数也是一种类型,任意函数都像字符串整型那样,具有自己的类型,也可以存到变量当中。
20 -
bennyhuo
2021-03-12
仔细想想,也动手实践一下,这个概念一开始没那么容易接受。
10
相似问题
属性引用和函数引用
回答 1
扩展函数调用扩展函数
回答 2