相关疑难解决方法(0)

Kotlin:什么是"返回@"是什么意思?

我在我的一个项目中使用RxJava,我使用Android Studio插件将我的一个类转换为Kotlin,并在一个map flatMaplambda(java中的Func1)中,中间件返回如下所示@Func1.

我不知道这是什么意思.

something.flatMap(Func1<ArticleCriteria, Observable<Pair<String, String>>> {
    val isTemporaryClone = it.isATemporaryClone
    val isTheOriginalToken = it.tokenIsOriginalHere

    if (isTemporaryClone) {
        if (!isTheOriginalToken) {
            return@Func1 paramsError("Token is always original for temp articles")
        }

        return@Func1 mJobRunner.doNotRun(DeleteArticleJob.TAG)
                            .doOnNext(deletePersonalActionById(articleId))
    }

    runArticleJobAsync(DeleteArticleJob.TAG, it)
})
Run Code Online (Sandbox Code Playgroud)

android kotlin rx-java

55
推荐指数
2
解决办法
1万
查看次数

在Kotlin从lambda隐含回归

看起来lambda的最后一行总是返回该值,即使你省略了该return语句.它是否正确?是否记录在任何地方?

fun main(args: Array<String>) {
    val nums = arrayOf(1, 2, 3)
    val numsPlusOne = nums.map { it -> 
        val r = it + 1
        r
    }
    // numsPlusOne = [2, 3, 4]
}
Run Code Online (Sandbox Code Playgroud)

kotlin

23
推荐指数
1
解决办法
7697
查看次数

标签 统计

kotlin ×2

android ×1

rx-java ×1