如何在数据类中启动固定大小的数组

时间:2019-12-24 09:27:47

标签: kotlin

我试图研究它,但是没有找到答案。我正在创建一个数据类,在该类中,我想创建一个固定大小的数组。我尝试了以下3种选择:

data class User (
    val profilePics = arrayOf("a", "b", "c")
)

data class User (
    val profilePics: Array<String>(3)
)

data class User (
    val profilePics = arrayOfNulls<String>(3)
)

但是它们都不起作用。 但是,这确实可行:

data class User (
    val profilePics: Array<String>
)

如何在数据类内部初始化固定大小的字符串数组

3 个答案:

答案 0 :(得分:1)

使用此:

var list:ArrayList <String> = ArrayList(5)

答案 1 :(得分:1)

您需要在值参数上输入类型注释。

以下两个可以正常编译:

data class User (
    val profilePics: Array<String> = arrayOf("a", "b", "c")
)

data class User (
    val profilePics: Array<String?> = arrayOfNulls<String>(3)
)

当然,在创建这些数据类中的任何一个的实例时,没有什么能够阻止调用者传入大小不同的数组:

val user = User(arrayOf("a", "b", "c", "d")) // compiles fine

答案 2 :(得分:1)

尝试一下-希望有帮助 var array = Array(2){i-> 1}

var array = arrayOf(1,2,3)//您也可以增加大小