📅  最后修改于: 2023-12-03 14:39:47.449000             🧑  作者: Mango
在 C# 编程中,LINQ(Language Integrated Query)是一种强大的查询语言,它可以用于从各种数据源中执行查询操作。本文将介绍如何使用 LINQ 在对象列表中查找整数并对其进行排序。
首先,我们需要创建一个包含整数和其他属性的对象列表。假设我们创建了一个名为 Person
的类,并在该类中定义了一个 Age
属性来表示人的年龄。以下是示例代码:
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
List<Person> personList = new List<Person>()
{
new Person { Name = "John", Age = 25 },
new Person { Name = "Alice", Age = 30 },
new Person { Name = "Bob", Age = 20 },
new Person { Name = "Emma", Age = 35 },
new Person { Name = "Peter", Age = 28 }
};
以上代码创建了一个包含 5 个 Person
对象的 personList
。
接下来,我们使用 LINQ 查询表达式来查找年龄大于等于 25 的人员,并按年龄进行升序排序。以下是示例代码:
var result = from person in personList
where person.Age >= 25
orderby person.Age
select person;
以上代码使用 from
和 where
子句过滤出年龄大于等于 25 的人员,并使用 orderby
子句按年龄进行排序。
最后,我们可以通过遍历结果并打印每个人员的名称和年龄来查看查询结果。以下是示例代码:
foreach (var person in result)
{
Console.WriteLine($"Name: {person.Name}, Age: {person.Age}");
}
以上代码遍历查询结果并使用 Console.WriteLine
方法将每个人员的名称和年龄打印到控制台。
下面是完整的代码示例:
using System;
using System.Collections.Generic;
using System.Linq;
public class Program
{
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
public static void Main()
{
List<Person> personList = new List<Person>()
{
new Person { Name = "John", Age = 25 },
new Person { Name = "Alice", Age = 30 },
new Person { Name = "Bob", Age = 20 },
new Person { Name = "Emma", Age = 35 },
new Person { Name = "Peter", Age = 28 }
};
var result = from person in personList
where person.Age >= 25
orderby person.Age
select person;
foreach (var person in result)
{
Console.WriteLine($"Name: {person.Name}, Age: {person.Age}");
}
}
}
上述代码将打印以下结果:
Name: John, Age: 25
Name: Peter, Age: 28
Name: Alice, Age: 30
Name: Emma, Age: 35
使用 LINQ 进行对象列表的查询和排序可以使代码更简洁、易读。通过使用 from
、where
和 orderby
子句,我们可以轻松地实现各种数据筛选和排序的需求。