Kotlin:是否存在@@ swift的转义功能?

时间:2018-08-14 12:01:42

标签: swift kotlin

我是否在寻找与kotlin相同的命令@escaping?

func fetch(response: @escaping (PriceResponse?) -> Void)

2 个答案:

答案 0 :(得分:1)

是的。存在。而且语法类似于swift:

fun fetch(callback: (PriceResponse) -> Unit){ }

PriceResponse更改为您要返回的内容

已编辑

然后将函数调用从fetch()更改为

fetch {
    callingYourAPI(here) // or you can get named argument
    // do some more stuff
}

答案 1 :(得分:0)

我认为,根据此https://kotlinlang.org/docs/reference/lambdas.html,kotlin中的所有闭包都不可转义,并且无法进行转义。

UPD:可以通过kotlin corutines实现类似的功能。您可以在这里找到更多信息:https://kotlinlang.org/docs/reference/coroutines.html