我正在和Kotlin一起做一个Android原生项目.我想在我的helper Class中添加一个行为,在某些情况下,我希望它的结果被丢弃.

在Swift中,我可以用@discardableResult来完成这个任务,

@discardableResult
func checkForStatus() -> Bool {
   ...
}

我想在Android—Kotlin端实现同样的行为,有什么方法可以实现这一点吗?

推荐答案

据我所知,没有注释,因为我们不需要它.这种行为在kotlin中是默认的,Android Studio不会发出任何关于不使用函数返回值的警告.我们实际上必须注释返回值重要的函数.

为了判断返回值的使用,我们使用了androidx.annotation.CheckResult注释.现在IDE将判断您是否使用函数返回的值.

Simple example

fun getTrue(): Boolean = true

@CheckResult
fun getFalse(): Boolean = false

fun main() {
    //No warning, it's up to you to use returned value or not
    getTrue()
    
    //Warning, indicates returned value should be used to something
    getFalse()
}

enter image description here

Swift相关问答推荐

我应该在自定义存储队列上使用弱self 吗?

NSWindow中以编程方式创建的TextField快捷方式与SwiftUI

从后台线程获取@发布属性的值(不更改它)是正确的吗?

编写Swift字符串的属性包装时遇到问题

如何让ScrollView缩小到合适的大小,并在没有黑客攻击的情况下占用最小空间

如何使用变量 Select 哪个向量(?)在我的 struct 中密谋吗?

在 SwiftUI 视图中观察 UIViewRepresentable 的 @State var 变化

try 从闭包访问返回的字符串时出现无法将类型 '()' 的返回表达式转换为返回类型 'String'编译器错误

使用序列初始化字符串的时间复杂度是多少?

如何使用Swift宏和@Observable和@Environment?

Swiftui 无法从核心数据中获取数据

将每个枚举 case 与 Swift 中的一个类型相关联

Swift 中的Combine和didSet有什么区别?

在 SwiftUI 中的 ForEach 中使用 id 时如何为数组设置动画索引

Vapor, fluent 使用 PostgreSQL 保存/创建复杂模型

Vapor - 流利的,将对象保存到 PostgreSQL

Apple 的自然语言 API 返回意外结果

让我的函数计算数组 Swift 的平均值

Swift:创建 UIImage 数组

Swift 2.0 按属性对对象数组进行排序