You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Kotlin中lambda参数的返回值添加注解

正确实现方案

你需要把@FloatRange注解直接标注在lambda表达式的返回值类型前,正确代码如下:

import androidx.annotation.FloatRange

private fun MyFun(
    progress: () -> @FloatRange(from = 0.0, to = 1.0) Float,
) {
    // 业务逻辑
}

补充说明

  • 绝大多数语法报错都是因为注解位置错误,不要将注解放到参数名前或者函数类型的括号前,必须严格放在->符号和返回值类型Float之间。
  • 如果你使用的Kotlin版本低于1.4,也可以通过typealias预定义带注解的函数类型再调用:
import androidx.annotation.FloatRange

typealias ProgressSupplier = () -> @FloatRange(from = 0.0, to = 1.0) Float

private fun MyFun(
    progress: ProgressSupplier,
) {
    // 业务逻辑
}

内容的提问来源于stack exchange,提问作者RareScrap

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 19:54:01