【问题标题】:sort dictionaries in array by value of certain key按特定键的值对数组中的字典进行排序
【发布时间】:2015-03-18 12:02:57
【问题描述】:

我正在尝试创建一个对我的数组进行排序的函数:

Online demo here

let dictArr = [     ["name": "asd", "sell": 0.258, "buy": "5.52"],
                    ["name": "dbs", "sell": 1.258, "buy": "4.52"],
                    ["name": "fdd", "sell": 2.258, "buy": "3.52"]]

假设我想通过“sell”键对我的 dictArr 中的字典进行排序。

我尝试的是:

dictArr.sort {
    item1, item2 in
    let val1 = item1["sell"] as Double
    let val2 = item2["sell"] as Double
    return val1 > val2
}

这不起作用。有人可以帮忙吗?

【问题讨论】:

    标签: ios arrays sorting swift dictionary


    【解决方案1】:

    Array.sort 是一个变异函数。当改变一个数组时,你不能让它成为一个让。您只需将 let 更改为 var 即可。

    看看你下次收到的错误信息;)

    【讨论】:

    • 确实!我是新来的 swift :) 谢谢!一切正常
    • 或者可能使用 Array.sorted 来返回一个新数组,这样你就不会改变原始数组。
    猜你喜欢
    • 2016-03-03
    • 2016-04-17
    • 1970-01-01
    • 1970-01-01
    • 2020-10-27
    • 2012-03-19
    • 1970-01-01
    • 1970-01-01
    • 2021-08-12
    相关资源
    最近更新 更多