我想知道是否有可能在索引1中插入一个元素但不能在swift中插入索引0,如下所示:
var array = [String]()
array.insert("cow", atIndex: 1)
但每次我尝试时都会收到旧的致命错误:数组索引超出范围错误消息。
还有这个问题吗?任何建议将不胜感激!谢谢!
答案 0 :(得分:2)
如果你把它作为一个选项数组并初始化你想要的元素数量,你就可以近距离接触。
var array = [String?]()
for i in 0...5 {
array.append(nil)
}
array.insert("cow", atIndex: 1)
答案 1 :(得分:2)
如果你真的希望索引是特定的,而不仅仅是数组中的下一个可用位置,你应该使用带有Int键的字典。
var dict = [Int:String]()
dict[1] = "Cow"
dict[5] = "Chicken"
答案 2 :(得分:0)
您可以创建自定义列表。您需要添加一些检查以确保项目不为空或超出索引等。
<div ng-repeat="first in arr" ng-init="parentIndex=$index">
here there is the first level $index
<div ng-repeat="second in first.arr">
in here I need access to the first level {{parentIndex}}
</div>
</div>
答案 3 :(得分:0)
字面上你不能。
如果索引为0的数组为空,则可以将项目插入最大索引index(max) = array.count
。