【发布时间】:2018-11-06 22:23:00
【问题描述】:
我正在学习 Swift,我目前正在构建一个小型应用程序,它将一个双精度数组存储到 NsUserDefaults 中,然后检索这些值。然后我想对数据执行一些数学运算,并将结果输出为字符串,但是,类型限制意味着我无法这样做。
目前我的代码如下:
// SAVE DOUBLES TO NSUSERDEFAULTS
let defaults = UserDefaults.standard
let distanceElapsed=0.0
let counter=3.0
let paceVal=5.4
let genericValues=[Double(distanceElapsed), Double(counter), Double(paceVal)]
defaults.set(genericValues, forKey: distTimeKey)
// LOADING VALUES
let distTime = defaults.array(forKey: distTimeKey) ?? [Double]()
guard let array = distTime, let pace = Optional.some.(array[2]) else{
return
}
let stringOP=String(pace)
错误: 但是,这会返回两个错误
【问题讨论】:
-
为什么您认为将
()添加到distTime是合适的? -
请添加 distTime() 函数定义也有问题。
-
distTime() 在里面写什么
-
道歉@Sweeper 等。人。 .这是一个疏忽,我现在已经纠正了这个,但是,错误仍然存在。我没有相应地更新我的帖子。
-
@George 你在哪里写这段代码。你能显示周围函数的签名吗?
标签: arrays swift types double optional