如何使用可排名的int属性对列表进行排序System.Collections.Generic.List<T>.Sort?
或者我必须进行手动分类,因为那是不可能的?
首先,您需要确定空值如何与具有值的项目进行比较.然后你可以进行比较.例如,如果您确定null始终"小于"非null:
list.Sort((x,y) => {
if(!x.Nullable.HasValue) {
if(!y.Nullable.HasValue) return 0; // equal
else return -1; // y is greater
}
else
{
if(!y.Nullable.HasValue) return 1; // x is greater
if(x == y) return 0; // equal
if(x < y) return -1; // y is greater
else return 1;
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2405 次 |
| 最近记录: |