假设我们有一个名为imageFile的自定义类,该类包含两个属性.
class imageFile {
var fileName = String()
var fileID = Int()
}
Run Code Online (Sandbox Code Playgroud)
很多都存储在Array中
var images : Array = []
var aImage = imageFile()
aImage.fileName = "image1.png"
aImage.fileID = 101
images.append(aImage)
aImage = imageFile()
aImage.fileName = "image1.png"
aImage.fileID = 202
images.append(aImage)
Run Code Online (Sandbox Code Playgroud)
问题是:如何通过'fileID'ASC或DESC对图像数组进行排序?
基本上问题是在这个例子中:
let d1 = NSNumber(value: 1.4);
let d2 = d1.doubleValue;
let f1 = NSNumber(value: Float(1.4));
let f2 = d1.floatValue;
Run Code Online (Sandbox Code Playgroud)
d1 结果 1.4
d2 结果 1.3999999999999999
f1 结果 1.4
f2 结果 1.3999999999999998
有谁知道这是为什么?
我正在尝试解析 JSON 文件,例如:
{"name": "something", "version": 1.4}
Run Code Online (Sandbox Code Playgroud)
使用以下代码:
let json = try (JSONSerialization.jsonObject(with: someData) as? [String: Any])!;
let version: Double = (json["version"] as! NSNumber).doubleValue;
Run Code Online (Sandbox Code Playgroud)
或者
let version: Double = json["version"] as! Double;
Run Code Online (Sandbox Code Playgroud)
或者
let version: Double = json["version"] as! Float;
Run Code Online (Sandbox Code Playgroud)
我就是无法得到1.4 ...
四舍五入对我来说不是解决方案,因为我想将此数字写回 JSON 文件,该文件将被其他程序/语言解析,并且在文件中需要正好为 …