【问题标题】:Create Array from values of Array within Object从 Object 中的 Array 的值创建 Array
【发布时间】:2015-01-25 05:41:26
【问题描述】:

finalRestaurantArray 是一个 PFObjects 数组,其中包含每个对象的数组 CloseHoursCloseHours 包含一周 [0-6] 中每一天的关闭时间。

如何为每个对象创建一个包含 CloseHours[dayOfWeek] 值的数组。 如果是星期二 (let dayOfWeek = 1),该数组应如下所示:

 [0015, 2350]

当前尝试:

    //create array of CloseHours
    let initialCloseRestaurantHours = finalRestaurantArray.map { $0.objectForKey("CloseHours") as [String] }
    //get the close hour for given day
    let closeRestaurantHours = initialCloseRestaurantHours.map { $0.objectAtIndex(dayOfWeek) as String }
    //Error: [string] does not have a member named objectAtIndex 

附加信息

这是对象数组finalRestaurantArray

[<Restaurant: 0x17411aca0, objectId: LA74J92QDA, localId: (null)> {
    Name = "First One";
    CloseHours =     (
        0005,
        0015,
        0025,
        0035,
        0045,
        0055,
        0065
    );
}, <Restaurant: 0x17411b480, objectId: 0aKFrpKN46, localId: (null)> {
    Name = "Second One";
    CloseHours =     (
        0015,
        2350,
        2350,
        2350,
        2350,
        2350,
        2350
    );
}]

【问题讨论】:

    标签: objective-c arrays swift


    【解决方案1】:

    试试$0[dayOfWeek],而不是$0.objectAtIndex(dayOfWeek)$0 现在是 [String] 类型的 Swift 数组,而 Swift 数组没有 objectAnIndex: 方法。

    【讨论】:

    • 抱歉打错了。并感谢您的提醒。现在我假设这不是完成我想做的事情的理想方式?
    • 如果您的目标是每天获得一系列关闭时间,那么它运作良好。唯一有点令人困惑的是initialCloseRestaurantHours 是一个数组数组。也许将其命名为 closeRestaurantHoursArrays 或者添加一个注释,说明它的字符串数组数组可能有用?
    猜你喜欢
    • 1970-01-01
    • 2022-12-01
    • 2018-12-20
    • 2022-01-18
    • 1970-01-01
    • 1970-01-01
    • 2012-02-29
    • 2015-11-17
    • 2015-12-31
    相关资源
    最近更新 更多