如何在 kotlin 中`List<MyClass>::clas.java`

ego*_*n12 2 mockito kotlin

我想ArgumentCaptorkotlin.

我所做的:

val c := ArgumentCaptor<List<MyClass>, 
List<MyClass>>.forClass(List<MyClass>::class.java)
Run Code Online (Sandbox Code Playgroud)

但它说

Only classes are allowed on the left hand side of a class literal

eph*_*ent 5

ArgumentCaptor<List<MyClass>> c = ArgumentCaptor.forClass(List<MyClass>.class);
Run Code Online (Sandbox Code Playgroud)

也不能在 Java 中编译,因为在运行时<MyClass>由于擦除而不是类型的一部分。

相反,请考虑使用com.nhaarman:mockito-kotlinwhich 包装 Mockito 和更适合从 Kotlin 使用的 API。

val c = argumentCaptor<List<MyClass>>()
Run Code Online (Sandbox Code Playgroud)