将一个int列表移动到列表的前面

时间:2013-04-22 08:11:11

标签: c# linq list sorting

我有一个Int64列表(列表A)需要移动到另一个列表(Int64)(列表B)的前面。

列表B将始终包含列表A中的数字。

所以说列表A有以下数字:

1, 4, 5

列表B可能看起来像这样:

1, 9, 5, 2, 10, 15, 4

最终结果应如下所示:

1, 4, 5, 9, 2, 10, 15

将数字从第一个列表移动到第二个列表前面的最简单方法是什么?

我考虑从列表B中删除所有列表A号码,然后再将它们添加到前面,但我似乎无法理解编程本身。

1 个答案:

答案 0 :(得分:8)

哟可以尝试以下方法:

var result = listA.Concat(listB.Except(listA)).ToList();
// Gives: 1, 4, 5, 9, 2, 10, 15, 14

ExceptlistA中移除listB的所有元素。 Concat然后将它们添加到列表的前面。