繁体   English   中英

iOS如何从数据库中以数组解析Swift下载数据

[英]iOS How to download data from database in array parse Swift

我有一个问题,我在一类中有数据库,而我这个类中有1行包含12个值,这些值不会改变。 所以我想加载数组中的所有数据。

现在,我为单独的变量加载数据。 我的代码:

var JAN = Double()
var FEB = Double()
var MAR = Double()
var APR = Double()
var MAY = Double()
var JUN = Double()
var JUL = Double()
var AUG = Double()
var SEP = Double()
var OCT = Double()
var NOV = Double()
var DEC = Double()

和代码来加载数据:

     let query = PFQuery(className: "result")
    query.findObjectsInBackground { (objects, error) in
        for object in objects! {
            self.JAN = object["JAN"] as! Double
            self.FEB = object["FEB"] as! Double
            self.MAR = object["MAR"] as! Double
            self.APR = object["APR"] as! Double
            self.MAY = object["MAY"] as! Double
            self.JUN = object["JUN"] as! Double
            self.JUL = object["JUL"] as! Double
            self.AUG = object["AUG"] as! Double
            self.SEP = object["SEP"] as! Double
            self.OCT = object["OCT"] as! Double
            self.NOV = object["NOV"] as! Double
            self.DEC = object["DEC"] as! Double
        }

    }

我加载在单独变量中的所有数据,我想保存在一个数组中。 所以我想将所有数据加载到一个数组中,我该怎么做?

可以使用多组数组
假设你有一个objectobjects

var array = [(name: String, value: Double)]()
let query = PFQuery(className: "result")
query.findObjectsInBackground { (objects, error) in
    if let object in objects?.first {
        array.append((name: "JAN", value: object["JAN"] as! Double))
        array.append((name: "FEB", value: object["JAN"] as! Double))
        ...
    }
}
// use it as
for each in array {
    print("\(each.name): \(each.value)")
}

您还可以添加所有(键,值)对,而无需根据object类型指定object键。 如果是字典,那么

query.findObjectsInBackground { (objects, error) in
    if let object in objects?.first {
        for key in object.keys {
            array.append((name: key, value: object[key] as! Double))
        }
    }
}
let query = PFQuery(className: "result")
        query.findObjectsInBackground { (objects, error) in
             ServerData.init(JAN: object["JAN"], FEB: object["FEB"], MAR: object["MAR"], APR: object["APR"], MAY: object["MAY"], JUN: object["JUN"], JUL: object["JUL"], AUG: object["AUG"], SEP: object["SEP"], OCT: object["OCT"], NOV: object["NOV"], DEC: object["DEC"])

        }

采取serverData struct class

import Foundation
struct ServerData {

var JAN :Double?
var FEB : Double?
var MAR : Double?
var APR : Double?
var MAY : Double?
var JUN : Double?
var JUL : Double?
var AUG : Double?
var SEP : Double?
var OCT : Double?
var NOV : Double?
var DEC : Double?

    init(JAN: Double,FEB: Double,MAR:Double,APR:Double,MAY:Double,JUN:Double,JUL:Double,AUG:Double,SEP:Double,OCT:Double,NOV:Double,DEC: Double) {
        self.JAN = JAN
        self.FEB = FEB
        self.MAR = MAR
        self.APR = APR
        self.MAR = MAY
        self.JUN = JUN
        self.JUL = JUL
        self.AUG = AUG
        self.SEP = SEP
        self.OCT = OCT
        self.NOV = NOV
        self.DEC = DEC
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM