Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kotlin spied高阶函数的类型推断_Kotlin_Mockito_Mockito Kotlin - Fatal编程技术网

Kotlin spied高阶函数的类型推断

Kotlin spied高阶函数的类型推断,kotlin,mockito,mockito-kotlin,Kotlin,Mockito,Mockito Kotlin,我正在用mockito kotlin在Android上开发一个单元测试 我试图监视一个函数,所以我编写了下面的代码来实现这一点,它工作得很好 在这种情况下,AndroidStudio指出强制转换是不必要的,但是当强制转换被删除时,类型被更改为Foo,而不是Foo->Unit: private val onClick /*:(Foo) -> Unit*/ = spy({ foo: Foo -> } as (Foo) -> Unit) private val onClick /*

我正在用mockito kotlin在Android上开发一个单元测试

我试图监视一个函数,所以我编写了下面的代码来实现这一点,它工作得很好

在这种情况下,AndroidStudio指出强制转换是不必要的,但是当强制转换被删除时,类型被更改为Foo,而不是Foo->Unit:

private val onClick /*:(Foo) -> Unit*/ = spy({ foo: Foo -> } as (Foo) -> Unit)

private val onClick /*:(Foo) -> Unit*/ = { foo: Foo -> }

private val onClick /*:Foo*/ = spy({ foo: Foo -> })

编译器如何得出类型为Foo的结论,以及我应该如何编写代码以避免不必要的强制转换警告?

您是否尝试显式指示方法返回类型?Like:private-val-onClick:(Foo)->Unit=spy({Foo:Foo->})是的,它指示类型不匹配的错误您是否尝试显式指示方法返回类型?Like:private-val-onClick:(Foo)->Unit=spy({Foo:Foo->})是的,它表示类型不匹配的错误