如何在scala中编写函数isFunction

如何在scala中编写函数isFunction

本文介绍了如何在scala中编写函数isFunction?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

限时删除!!

我如何在 Scala 中编写 isFunction 函数,以使其有效:

How can i write a isFunction function in scala, so that this works:

def isFunction(x:Any) = /* SomeCode */

println(isFunction(isFunction _)) //true
println(isFunction("not a function")) //false

推荐答案

很丑,但它有效:

def isFunction(x:Any) = x match {
  case _: Function0[_] => true
  case _: Function1[_, _] => true
  case _: Function2[_, _, _] => true
  ...
  case _: Function22[...] => true
  case _: PartialFunction[_, _] => true
  case _ => false
}

这篇关于如何在scala中编写函数isFunction?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

1403页,肝出来的..

09-06 23:00