gpt4 book ai didi

android - Kotlin Observer lambda 语法?

转载 作者:行者123 更新时间:2023-12-04 23:53:31 25 4
gpt4 key购买 nike

我现在正在学习来自 .NET C# 的用于 Android 开发的 Kotlin。我对 Kotlin 语法有疑问,例如:

 val nameObserver = Observer<String> { newName ->

nameTextView.text = newName
}

此代码取自 Android LiveData 文档。我认为 Observer 是一个新对象,没有 new 关键字,因为它在 Kotlin 中不存在。我的问题是 lambda 部分。这是在对象中初始化的属性吗?我如何知道初始化了哪些属性而不命名它们,它们是否按顺序排列?在这种情况下应该是什么 newName、nameObserver 值或其他什么?

最佳答案

您发布的代码段称为 SAM conversion .您正在创建接口(interface)类型的对象 Observer<String>通过将其指定为 lambda 表达式。

根据您的具体情况newName是传递给 onChanged method 的参数, 并看到代码将其定义为 Observer<String> , 类型为 String .

关于android - Kotlin Observer lambda 语法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67819170/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com