using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace orderByChinese
{
class Program
{
static void Main(string[] args)
{
List<Person> Persons = new List<Person> { new Person { name="啊一",age=12}, new Person { name = "播二", age = 12 }, new Person { name = "次一", age = 12 }, new Person { name = "的二", age = 11 } };
CultureInfo culture = CultureInfo.GetCultureInfo("zh-cn");
Persons = Persons.OrderByDescending(o => o.age).ThenBy(o => o.name, StringComparer.Create(culture, true)).ToList();
foreach (var item in Persons)
{
Console.WriteLine("姓名:{0},年龄:{1}", item.name, item.age);
}
Console.ReadKey();
}
}
public class Person
{
public string name { get; set; }
public int age { get; set; }
}
}
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace orderByChinese
{
class Program
{
static void Main(string[] args)
{
List<Person> Persons = new List<Person> { new Person { name="啊一",age=12}, new Person { name = "播二", age = 12 }, new Person { name = "次一", age = 12 }, new Person { name = "的二", age = 11 } };
CultureInfo culture = CultureInfo.GetCultureInfo("zh-cn");
Persons = Persons.OrderByDescending(o => o.age).ThenBy(o => o.name, StringComparer.Create(culture, true)).ToList();
foreach (var item in Persons)
{
Console.WriteLine("姓名:{0},年龄:{1}", item.name, item.age);
}
Console.ReadKey();
}
}
public class Person
{
public string name { get; set; }
public int age { get; set; }
}
}
本文展示了一个使用C#进行中文姓名及年龄排序的例子。通过设置CultureInfo为'zh-cn',并利用LINQ的OrderByDescending和ThenBy方法,实现了先按年龄降序再按中文姓名升序排列的功能。
6万+

被折叠的 条评论
为什么被折叠?



