[linq or lamda]一行代码 排序拼下如下形式

人傻且呆但不萌 2012-12-18 12:19:03
数据:List<string> list = new List<string> { "667","665","668"};

执行方法后: "665-667-668"

...全文
211 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiaoshiyao 2013-05-14
  • 打赏
  • 举报
回复
为什么结贴了
zerochunfeng 2013-03-13
  • 打赏
  • 举报
回复
引用 1 楼 nice_fish 的回复:
群里面的朋友解决了: 贴上代码: var s = string.Join("-",list.OrderBy(x=>x));
大哥去接分http://bbs.csdn.net/topics/390390079?page=1#post-393895102
  • 打赏
  • 举报
回复
引用 7 楼 q107770540 的回复:
这个我晓得,不过orderby 时要转化成int 这个不能省,不然就不对了
对的
  • 打赏
  • 举报
回复
群里面的朋友解决了: 贴上代码: var s = string.Join("-",list.OrderBy(x=>x));
q107770540 2012-12-18
  • 打赏
  • 举报
回复
这个我晓得,不过orderby 时要转化成int 这个不能省,不然就不对了
  • 打赏
  • 举报
回复
引用 3 楼 q107770540 的回复:
引用 1 楼 nice_fish 的回复:群里面的朋友解决了: 贴上代码: var s = string.Join("-",list.OrderBy(x=>x)); 应该是这样吧: var s = string.Join("-",list.OrderBy(x=>x).ToArray());
4.0 拓展了string.Join的方法,支持参数IEnumerable<string> values 所以可以不用ToArray
  • 打赏
  • 举报
回复
引用 4 楼 q107770540 的回复:
var s = string.Join("-",list.OrderBy(x=>int.Parse(x)).ToArray());
这个跟一楼的差不多 linq还真是高级
q107770540 2012-12-18
  • 打赏
  • 举报
回复
var s = string.Join("-",list.OrderBy(x=>int.Parse(x)).ToArray());
q107770540 2012-12-18
  • 打赏
  • 举报
回复
引用 1 楼 nice_fish 的回复:
群里面的朋友解决了: 贴上代码: var s = string.Join("-",list.OrderBy(x=>x));
应该是这样吧: var s = string.Join("-",list.OrderBy(x=>x).ToArray());

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧