如何排序与C#字符串 [英] how to sort strings with C#

查看:171
本文介绍了如何排序与C#字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个像



 公共类KeyNamePair 
{
公共字符串键{获得;设置;}

公共字符串名称{;设置;}
}

我的代码

 列表< KeyNamePair>名单=新名单,LT; KeyNamePair>(); 

list.Add(1,1天);
list.Add(2,第11天);
list.Add(4,5天);
list.Add(6,第13天);



我如何可以排序列表中显示

 > 第一天,第五天,11天,13天

为了<? / p>

我试图

  VAR排序列表= source.OrderBy(X => ; x.Name).ToList(); 
返回排序列表;

这并不做任何形式的


解决方案

尝试是这样的:

  VAR排序列表= source.OrderBy(X => INT .Parse(x.Name.Split('')[1]))了ToList(); 
返回排序列表;



它不会,如果数据是在其他格式的工作,但它应该与你提供的格式工作。你不能排序字符串本身,因为字符串13< 5


I have a class like

public class KeyNamePair
{
 public string Key {get;set;}

 public string Name{get;set;}
}

My code

List<KeyNamePair> list =new List<KeyNamePair>();

    list.Add("1", "Day 1");
    list.Add("2", "Day 11");
    list.Add("4", "Day 5");
    list.Add("6", "Day 13");

How can i sort the list to display

>  "Day1", "Day5", "Day 11", "Day 13"

in order?

i tried

var SortedList = source.OrderBy(x => x.Name).ToList();
            return SortedList;

this does not do any sort

解决方案

Try something like:

var SortedList = source.OrderBy(x=>int.Parse(x.Name.Split(' ')[1])).ToList();
return SortedList;

It won't work if data is in other format, but it should work with format you provided. You cannot sort by string itself because string "13" < "5"

这篇关于如何排序与C#字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆