我创建了一个名为testArray的数组。然后我将其保存为用户默认值。并从用户默认值中检索它。当我记录原始" testArray"并记录检索到的" retrieveArray",经度和纬度字段已经改变。
例如:
testArray:"经度":31.132013199999999
retrieveArray:"经度":31.1320132
这是为什么?还有陌生人 - 为什么检索到的数组正确记录,但原始数组是否记录了额外的小数位?
谢谢。
let testarray =
Array(
arrayLiteral:
["longitude":31.1320132],
["longitude":31.1320132],
["longitude":31.1320132],
["longitude":31.1320132])
UserDefaults.standard.set(testarray, forKey: "myTestArray")
let retrievedArray = UserDefaults.standard.value(forKey:"myTestArray")
NSLog((testarray as! Array<Dictionary<String,Any>>)[2].description)
NSLog((retrievedArray as! Array<Dictionary<String,Any>>)[2].description)
输出
app[75897:9783167] ["longitude": 31.132013199999999]
app[75897:9783167] ["longitude": 31.1320132]
更新:有人说过#34;重复问题&#34;在StackOverflow上使用过于激进,我有时会注意到。但在这种情况下,是的!这个重复的问题&#34;似乎确实谈到了这个问题。谢谢。