【发布时间】:2017-03-14 17:00:58
【问题描述】:
我知道有很多问题和答案,但都不适用于我的问题。我有一个锯齿状数组,我想按数组 b、c 和 d 中的值排序:
string[][] toBeSorted = new string[][] { a, b, c, d, e, f, g, h, i, j};
这仅按“行”排序
toBeSorted = toBeSorted.OrderBy(inner => inner[2]).ToArray();
我尝试过Array.Sort(c.ToArray(), b) 和类似的方法,但在多值排序的情况下它们混合了整个选择
所以现在当我在 toBeSorted 中拥有像“John”、“Smith”、“New York”等值时。
我想让我的数组按“城市”、“姓氏”排序,例如最后按数组g 中的值排序。所以值是 a = 名称,b = 姓氏等。
在我的场景中,我依赖于 .NET 3.5。
谢谢。
【问题讨论】:
-
您能提供一些示例吗?是否要对
b、c、d数组中的值进行排序? -
您的问题不是很清楚 - 在您的示例中,“John”和“Smith”是两个不同的数组?当数组中只有字符串时,按姓氏排序是什么意思?
-
每个数组都代表一些数据,这些数据应该位于具有属性的类中。是这样吗?
-
嗨@DmitryBychenko,可以这样做,但问题是我想将其他相关值“链接”在一起。因此,如果我对 b、c、d 数组进行排序,来自 a、e、f、g、h、i 和 j 的其他值也会重新排列 - 但只有 b、c、d 需要排序。
-
@GiladGreen,可能是一种方法,是的。