当前位置: 首页 > 知识库问答 >
问题:

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

陈斌
2023-03-14

我试图研究它,但没有找到答案。我正在创建一个数据类,在该类中,我想创建一个固定大小的数组。我尝试了以下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个答案

陆俊捷
2023-03-14

试试这个-希望这个帮助:var array=array(2){i-

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

宦源
2023-03-14

使用此选项:

var list:ArrayList <String> = ArrayList(5)
仲孙俊贤
2023-03-14

您需要在值参数上键入注释。

以下两个将很好地编译:

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
 类似资料:
  • 对你来说有点困惑...... 我有一个730px宽,自动高度div。在这里面,我将小div的数量164px X 261px。 这些将被动态地拉入模板,所以我可以有1个,或者我可以有18个,或者为了这个练习,我可以有1000个,或者介于两者之间的任何地方。 我需要把它们隔开,这样每一行之间就有相等的距离。简单,如果我们处理多达4个,我可以这样做: 然而,当有人说5。我想要3个在最上面一排,2个在最下

  • 问题内容: 在Swift中,我试图创建一个由64个SKSpriteNode组成的数组。我想先将其初始化为空,然后将Sprites放在前16个单元格中,然后将最后16个单元格中(模拟象棋游戏)。 根据我在文档中了解的内容,我期望会出现以下情况: 要么 但这是行不通的。在第二种情况下,我收到一条错误消息:“尚不支持定长数组”。那可以是真的吗?对我来说,这听起来像是一项基本功能。我需要通过它们的索引直接

  • 问题内容: 我想知道如何初始化一个数组(或列表),但尚未填充值,以具有定义的大小。 例如在C中: 我该如何在python中做到这一点? 谢谢。 问题答案: 您可以使用:

  • 问题内容: 我正在尝试将固定大小的数组转换为可变大小的数组(切片): 但是编译器抛出错误: 我应该如何转换? 问题答案: 使用让您在阵列上切片。另请参阅此博客文章,以获取有关数组和切片的更多信息。

  • 免责声明:我知道这个问题可以通过数组的单次传递非常有效地解决,但我对用分而治之法做这个很感兴趣,因为它与我们用分而治之法处理的典型问题有点不同。 假设给定一个浮点数组x[1:n],大小为n,间隔长度为l。问题是设计一个分治算法,从具有最大和的数组中找到长度为l的子数组。 现在,为了将问题分成两半,我决定在n-l+1/2处中断数组,以便将相等数量的子数组分配到我的除法的两半,如下面的算法所示。同样,

  • 问题内容: 在C ++中,我可以创建如下数组: 在python中,我只知道我可以声明一个列表,而不要附加一些项目或类似。 我可以按给定的大小(如c ++)初始化列表,并且不进行任何赋值吗? 问题答案: (tl;博士:您问题的确切答案是或,但您可能不在乎,可以摆脱使用的困扰。) 您可以将列表初始化为所有相同的元素。使用非数字值在语义上有意义(如果使用它会在以后产生错误,这是一件好事)或类似0的值(不