社区
C#
帖子详情
C# List.Sort() 出现无法排序,原因是 IComparer.Compare() 方法返回不一致的结果。一个值与本身比较不相等,或者一个值与另外一个值
Null_Link
2020-11-06 09:59:59
C# List.Sort() 出现报错无法排序,原因是 IComparer.Compare() 方法返回不一致的结果。一个值与本身比较不相等,或者一个值与另外一个值重复比较生成不同的结果
有大佬知道怎么解决吗
...全文
15719
5
打赏
收藏
C# List.Sort() 出现无法排序,原因是 IComparer.Compare() 方法返回不一致的结果。一个值与本身比较不相等,或者一个值与另外一个值
C# List.Sort() 出现报错无法排序,原因是 IComparer.Compare() 方法返回不一致的结果。一个值与本身比较不相等,或者一个值与另外一个值重复比较生成不同的结果 有大佬知道怎么解决吗
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
暖洋洋的好日子
2020-11-11
打赏
举报
回复
干嘛用lambda表达式,看起来好繁琐
shawn_yang
2020-11-09
打赏
举报
回复
自己重写compare,可以按你的需求判定大小
syeerzy
2020-11-09
打赏
举报
回复
或简化为: (a, b) => { var aa = a.Name.Contains("XXX"); var bb = b.Name.Contains("XXX"); if (aa && !bb) return -1; else if (!aa && bb) return 1; else return 0; }
syeerzy
2020-11-09
打赏
举报
回复
你lambda里面的逻辑错了, 你想按什么排序? 我按你的代码猜想你可能的排序逻辑是想把Name里面带有某个字符串"XXX"的排后面, 其他排前面, 其他具体顺序无所谓. 如果这样, 你应该是这么写: (a, b)=> { if (a.Name.Contains("XXX")){ if(b.Name.Contains("XXX")) return 0; else return 1; } else if (b.Name.Contains("XXX")) return -1; else return 0; }
yijigu2
2020-11-06
打赏
举报
回复
a.CompareTo(b)
c#
List
类
排序
方法
List
类几种
排序
方法
比较
灵活 可以根据自己的需要 选用合适的
方法
c#
实现按拼音
排序
1.实现
List
类型集合中汉字按拼音
排序
2.可以
比较
两个汉字谁前谁后 3.得出汉字的大写拼音首字母
接口I
Compare
r
比较
器关于
排序
对你很有用的哈 接口I
Compare
r
比较
器关于
排序
Sort
()
方法
C#
使用I
Compare
r自定义
List
类实现
排序
的
方法
主要介绍了
C#
使用I
Compare
r自定义
List
类实现
排序
的
方法
,涉及
C#
使用I
Compare
r接口定义
List
类进行
排序
的相关技巧,需要的朋友可以参考下
C#
简单
排序
——
Sort
(2005)
C#
简单
排序
——
Sort
(2005),array.
sort
(),
list
viewitem.
sort
(),和I
compare
的接口使用.
C#
111,093
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章