Kotlin Vertx类型不匹配,发现将来不匹配<;单位>;预期处理程序<;异步结果<;无效>&燃气轮机;

Kotlin Vertx类型不匹配,发现将来不匹配<;单位>;预期处理程序<;异步结果<;无效>&燃气轮机;,kotlin,vert.x,kotlin-interop,Kotlin,Vert.x,Kotlin Interop,我认为在Kotlin中,Unit相当于Void。使用Vert.x服务发现,无法将未来传递给取消发布(字符串id、处理程序resultHandler)(提供类型不匹配),但它将毫无问题地接受未来。这是为什么?有没有解决办法,或者我只能忍受使用Void?单位不等同于Void,它等同于kotlin中的Void 在java中,void是一个关键字,而void是一个类。因此无法编译以下代码: fun foo():Void{/**need return a Void instance exactly**/}

我认为在Kotlin中,
Unit
相当于
Void
。使用Vert.x服务发现,无法将
未来
传递给
取消发布(字符串id、处理程序resultHandler)
(提供类型不匹配),但它将毫无问题地接受
未来
。这是为什么?有没有解决办法,或者我只能忍受使用
Void

单位
不等同于
Void
,它等同于kotlin中的
Void

在java中,
void
是一个关键字,而
void
是一个类。因此无法编译以下代码:

fun foo():Void{/**need return a Void instance exactly**/}

fun bar():Void{ return Unit; }
//                     ^--- type mismatch error
java应用相同的规则,例如:

Void canNotBeCompiled(){
  // must return a Void instance exactly.
}

Void foo(){
  return Void.TYPE;
}

Void nil(){
  return null;
}
最后,文件还说:

只有一个值的类型:Unit对象。此类型对应于Java中的void类型


谢谢是的,你完全正确。那些讨厌的大写字母@一点也不。