【发布时间】:2017-03-27 12:07:51
【问题描述】:
我正在尝试创建二维整数数组:
var arr: [[Int]] = []
arr[0][0] = [123, 456, 789]
但我在第二行收到以下错误:
error: contextual type 'Int' cannot be used with array literal
arr[0][0] = [123, 456, 789]
你们中的任何人都知道如何将 int 值添加到 2D 数组中而不会出错?
我想在二维数组中添加以下值:
[123, 456, 789]
[2, 3, 5]
[100, 300, 400]
非常感谢您的帮助。
【问题讨论】:
-
var arr = [[123, 456, 789]]; Swift 将为您推断类型[[Int]]。此外,单个元素arr[0][0]不(尚)存在,因此如果您尝试为其分配一个整数(而不是数组,如上所述),您将遇到运行时异常。 -
你希望你的二维数组包含什么?
-
@dfri 但如果我想在 n 大小的二维数组中添加值?
-
1) 只需在初始化
let arr = [[123, 456, 789], [2, 3, 5], [100, 300, 400]]时添加三个子数组,或 2) 将数组初始化为空并使用append(..)添加子数组。 -
@AlexanderMomchliov,我想添加整数。我已经更新了我的帖子