【发布时间】:2020-10-14 09:51:52
【问题描述】:
我正在做一个发现数组变量的项目
var items: [[String: String]]!
我在谷歌搜索了如何定义一个空数组,结果为
var itemsNew: [[String: String]]()
在使用 items 数组时附加数据时出错
self.appDelegate.items.append([Name: "sdsd",
rate: "0.2",
Quantity:"3",
Taxable:"true",
Category: "",
inven: "true",
amount : "0.23",
mod: "",
darray: "",
list: "",
famount: "0.0"])
给出错误“致命错误:在隐式展开可选值时意外发现 nil:文件”。我给出了核心价值,但它仍然在崩溃。不知道为什么会崩溃。有人可以帮我吗?
【问题讨论】:
-
你试过了吗:var items = [[String: String]]()
-
实际上没有 var items = [[String: String]]!这个变量是以前的开发者写的,对以前的代码有效,所以不想改,可能会报错,所以没改
-
!表示它是可选的(与 ? 相同),但可以预期该变量始终会被初始化
-
如果您不想更改
items的声明,那么您需要搜索代码以便找到初始化它的位置,因为在此之前您无法使用该属性。不过,我个人建议更改声明。