【发布时间】:2016-02-22 14:38:32
【问题描述】:
它跳过 if (newklädDataList[minst].märke.CompareTo(newklädDataList[j].märke) > 0),我不知道为什么,有人能发现问题吗?
public static void SortByMärke()
{
for (int i = 0; i < newklädDataList.Count; i++)
{
int minst = 1;
for (int j = i + 1; j < newklädDataList.Count; j++)
{
if (newklädDataList[minst].märke.CompareTo(newklädDataList[j].märke) > 0)
{
minst = j;
}
}
if (i < minst)
{
Swap(minst, i);
}
}
}
【问题讨论】:
-
“跳过”到底是什么意思?跳过检查?还是条件永远不会成立?
-
集合的类型是什么,märke的类型是什么?
-
您的交换排序可能有误。
-
问一个更具体的问题。这不是用于查找错误的服务。如果像 CompareTo 这样的方法返回了一些意想不到的结果,那么请给我们更多信息,比如您正在比较的内容以及为什么比较不符合您的预期。
-
它不起作用,因为 int minst = 1 而不是 i。我超级尴尬。菜鸟失误。
标签: c# list sorting if-statement