Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/117.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS如何从数组中的数据库下载数据_Ios_Arrays_Swift_Parse Platform - Fatal编程技术网

iOS如何从数组中的数据库下载数据

iOS如何从数组中的数据库下载数据,ios,arrays,swift,parse-platform,Ios,Arrays,Swift,Parse Platform,我有一个问题,我在一个类中有数据库,我在这个类中有一行12个值,它们不会改变。 所以我想加载数组中的所有数据。 现在我加载单独变量的数据。 我的代码: 和加载数据的代码: let query = PFQuery(className: "result") query.findObjectsInBackground { (objects, error) in for object in objects! { self.JAN = object

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

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

和加载数据的代码:

     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
        }

    }

我在单独的变量中加载的所有这些数据,我想保存在一个数组中。
因此,我想将所有数据加载到一个数组中,我如何才能做到这一点呢?

可以使用touples数组
假设您有来自
对象的单个
对象

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)")
}
您还可以添加所有(键、值)对,而无需指定
对象
中的键,具体取决于您的
对象
类型。如果是字典,则

采用
serverData结构类

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
    }
}

创建
[Double]()
数组并在数组中附加值。我加载到单独变量中的所有数据都要保存在一个数组中。您需要学习Swift的基础知识,因为这不应该是一个问题,因此,您可以为此创建一个简单的结构或使用元组,如下面的答案所示。这不是OP想要的。
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"])

        }
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
    }
}