Java 如何在Scala中获取void.class?
为了使用MethodHandle,我需要表示一个不返回类型:void。在java中,它就像Java 如何在Scala中获取void.class?,java,scala,Java,Scala,为了使用MethodHandle,我需要表示一个不返回类型:void。在java中,它就像void.class一样简单(是的,它可以工作),在scala中,您可以使用 scala> classOf[Int] res1: Class[Int] = int ,但通过使用[Void]的类,您可以 scala> val t = classOf[Void] t: Class[Void] = class java.lang.Void scala> t.isPrimitive res4:
void.class
一样简单(是的,它可以工作),在scala中,您可以使用
scala> classOf[Int]
res1: Class[Int] = int
,但通过使用[Void]的类,您可以
scala> val t = classOf[Void]
t: Class[Void] = class java.lang.Void
scala> t.isPrimitive
res4: Boolean = false
这显然不是void.class Scala中没有void类型。所有函数都返回一些值。如果未明确定义该值,则该值为类型
Unit
此外,
void
被Java视为伪类型。因此,void不能成为返回对象的类型。Scala中没有void类型。所有函数都返回一些值。如果未明确定义该值,则该值为类型Unit
此外,
void
被Java视为伪类型。因此,void无法成为返回对象的类型。请参阅Andrew Jones关于Scala中返回类型的回答。如果您仍然需要它:
scala> val c = java.lang.Void.TYPE
c: Class[Void] = void
scala> c.isPrimitive
res0: Boolean = true
参见Andrew Jones关于Scala中返回类型的回答。如果您仍然需要它:
scala> val c = java.lang.Void.TYPE
c: Class[Void] = void
scala> c.isPrimitive
res0: Boolean = true
而不是
classOf[Void]
,使用:
Void.TYPE
REPL输出:
scala> classOf[Void]
res14: Class[Void] = class java.lang.Void
scala> Void.TYPE
res15: Class[Void] = void
而不是
classOf[Void]
,使用:
Void.TYPE
REPL输出:
scala> classOf[Void]
res14: Class[Void] = class java.lang.Void
scala> Void.TYPE
res15: Class[Void] = void
我对Scala一无所知,但是关于
classOf[void]
呢?@tbodt不起作用,void
在Scala中不存在。我对Scala一无所知,但是classOf[void]
呢?@tbodt不起作用,void
在Scala中不存在。