在 Kotlin 中定义数组类型

yra*_*as8 2 kotlin

我已经初始化了这样的字符串数组

var capitals = arrayOf("Tokyo","Moscow","Paris","Washington","Beijing")
Run Code Online (Sandbox Code Playgroud)

但我没有指定它的类型为String。我想当我在元素之后使用 arrayOf 构造函数时,我应该指定类型。

在此输入图像描述

尝试下面的代码会给我错误属性 getter 和 setter 预期

为什么我不能在括号内指定类型<>?

var capitals = arrayOf("Tokyo","Moscow","Paris","Washington","Beijing"):Array<String>
Run Code Online (Sandbox Code Playgroud)

And*_*ana 5

您必须在变量声明后指定类型,而不是在初始化后指定:

var capitals: Array<String> = arrayOf("Tokyo", "Moscow", "Paris", "Washington", "Beijing")
Run Code Online (Sandbox Code Playgroud)

或者您可以显式设置以下类型参数arrayOf:

var capitals = arrayOf<String>("Tokyo", "Moscow", "Paris", "Washington", "Beijing")
Run Code Online (Sandbox Code Playgroud)