0

我有一个由字典数组组成的可变数组:

(
      {
        A = Mango;
        B = "John";
        C = SLOVAKIA;
        D = 01/27/13;
        E = 2000;
    },
        {
        A = Banana;
        B = "Johny";
        C = THAILAND;
        D = 02/27/13;
        E = 4000;
    },
        {
        A = Orange;
        B = "Lezin";
        C = US;
        D = 03/27/13;
        E = 6000;
    }
)

现在我想根据键对数组进行排序,使键的顺序变为既不是升序也不是降序的 BECAD,它是一个随机顺序。预期输出如下:

(
      {
        B = "John";
        E = 2000;
        C = SLOVAKIA;
        A = Mango;
        D = 01/27/13;
    },
        {
        B = "Johny";
        E = 4000;
        C = THAILAND;
        A = Banana;
        D = 02/27/13;
    },
        {
        B = "Lezin";
        E = 6000;
        C = US;
        A = Orange;
        D = 03/27/13;
    }
)

我怎样才能做到这一点?

4

2 回答 2

1

没有保证字典键的固有顺序。在实践中,它们似乎是 FILO 顺序。但这是一个实现细节。

你应该使用像 NSArrayController 这样的代理来获得你想要的排序。

于 2013-06-19T09:52:00.543 回答
-1

NSMutableDictionary 总是以无序的方式返回键。

如果我们真的想保持顺序,那么我们可能需要在键之前/之后添加 01, 02 ,03 序列号以按照我们想要放置的顺序对它们进行排序,然后我们需要修剪字符串的数字部分并使用它。

于 2013-07-08T05:02:27.347 回答