gpt4 book ai didi

java - 将 Object[] 翻译为 Kotlin

转载 作者:行者123 更新时间:2023-12-02 01:04:52 25 4
gpt4 key购买 nike

我将以下代码翻译成 Kotlin:

if (intent.action == SMS_RECEIVED) {
// retrieves a map of extended data from the intent
val dataBundle = intent.extras
if (dataBundle != null) {
val mypdu = dataBundle.get("mypdu")

mypdu.length... (NOT WORKING)

}
}

具体来说,变量 mypdu 的创建就像 Java 中的这样:

Object[] mypdu = (Object[]) dataBundle.get("mypdu");

而且我无法将其翻译成 Kotlin。我无法使用以下内容:

val mypdu = dataBundle.get("mypdu") as (Object[])

IDE 似乎希望我将变量定义为 Any,然后我无法像我想要的那样访问它的 length 属性。我如何将这一行翻译成 Kotlin?

最佳答案

你可以使用这个:

val mypdu = dataBundle.get("mypdu") as Array<Any?>

请注意,我将 Array 的元素标记为 Any? 因为在 Java 中我们没有 null 安全编译器。这样您以后就不会遇到讨厌的 NPE。

要访问数组的长度,请使用 size 属性,如下所示:

val length = mypdu.size

关于java - 将 Object[] 翻译为 Kotlin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60202197/

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