按某个键的值对数组中的字典进行排序

时间:2015-03-18 12:02:57

标签: ios arrays sorting swift dictionary

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

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"]]

让我们说我想在我的dictArr中排序词典" sell"键。

我的尝试是:

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

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

1 个答案:

答案 0 :(得分:1)

Array.sort是一个变异函数。当改变一个数组你不能让它成为一个let。你必须改变let to var,你很高兴。

请稍后查看下次收到的错误消息;)