您好,欢迎访问一九零五行业门户网

C# 程序从对象列表中查找整数并使用 LINQ 对它们进行排序

简介在本文中,我们将学习如何编写 c# 程序从对象列表中查找整数并使用 linq 对它们进行排序。让我们对该语言进行一个简单的概述。 c# 编程语言经常用于开发桌面、web 和移动应用程序。语言集成查询(有时称为 linq)是 c# 的强项之一。开发人员可以快速查询来自各种来源的数据,包括数组、集合和数据库。它使开发人员能够使用与 sql(结构化查询语言)相当的语法,并支持简单的数据操作和排序。无论数据源如何,它都提供数据查询的标准语法。由于linq的语法与sql类似,开发人员可以轻松学习和使用它。
问题陈述在本文中,我们将演示如何从对象列表中查找整数并使用 c# 中的 linq 对它们进行排序。整数双精度数必须从对象列表中获取,然后必须对它们进行排序。因此,oftype() 方法可用于此操作,orderby() 函数可用于对整数进行排序。让我们分别回顾一下它们及其语法 -
oftype() 方法它用于根据指定类型过滤 ienumerable 的元素。如果提供的源为 null,此方法将抛出 argumentnullexception 异常。
语法public static system.collections.generic.ienumerable<tresult> oftype<tresult>(this system.collections.ienumerable source);
orderby() 方法使用此技术按升序对集合中的元素进行排序。如果提供的源为 null,则此过程也会引发 argumentnullexception。
语法public static system.linq.iorderedenumerableorderby<tsource,tkey(thissystem.collections.generic.ienumerable<tsource> list, func<tsource,tkey> selector);
让我们通过一个例子来理解这个问题。
示例创建一个列表并向其中添加元素。在此示例中,我们采用不同数据类型的对象。
输入
[tutpoints, 100, linq, 18, “50”, 20, ‘a’, 34]
对于不同的对象,oftype() 和 orderby() 方法将对列表中的整数值进行排序和排列。所以给定输入的输出是
输出
[18, 20, 34,100]
算法第 1 步 − 创建对象列表
我们首先创建一个由字符串、整数和字符组合组成的对象列表。
list<object> list = new list<object> { tutpoints, 100, linq, 18, “50”, 20, ‘a’, 34};
第 2 步 − 使用 oftype() 方法查找整数
然后,oftype() 方法将用于过滤列表,以便仅保留整数值。
var integers = list.oftype<int>();
linq 提供的扩展方法称为 oftype()。它返回一个经过过滤的此类条目列表。在本例中,列表被过滤为仅包含 int 类型的元素。现在只有第一个列表中的整数值出现在整数变量中。
第 3 步 − 使用 orderby() 对整数进行排序
我们可以使用 orderby() 函数对整数值序列进行升序排序。
var sortedintegers = integers.orderby(x => x);
linq 提供的另一个扩展函数是 orderby()。根据给定的键,它对元素列表进行升序排序。在本例中,使用 lambda 表达式 (x => x) 指定对系列进行排序的键。将序列元素 (x) 传递给 lambda 表达式,然后该表达式返回将作为排序键的值。
初始列表中的整数值现在出现在sortedintegers 变量中,并按升序排列。
第 4 步 −打印排序后的整数。
最后,我们可以使用 foreach 循环和 console.writeline() 方法打印出排序后的整数值。
这是我们刚刚读过的一个简单算法。现在让我们看一下完整的 c# 程序,该程序演示如何从对象列表中查找整数并使用 linq 对它们进行排序。
示例using system;using system.collections.generic;using system.linq;class program { static void main(string[] args) { list<object> list = new list<object> { tutpoints, 100, linq, 18, 50, 20, 'a', 34 }; var integers = list.oftype<int>(); var sortedintegers = integers.orderby(x => x); console.writeline(sorted integer values are:); foreach (int integer in sortedintegers) { console.writeline(integer); } }}
输出sorted integer values are:182034100
结论在这篇文章中,我们向您展示了如何在 c# 中使用 linq 从对象列表中查找整数并对它们进行排序。使用 oftype() 函数从列表中删除除整数值之外的所有值后,我们使用 orderby() 方法对整数进行排序。最后,我们使用打印命令将排序后的整数值显示到控制台。我们已经了解了算法,也看到了代码。我们希望本文可以帮助您增强对该主题的了解和理解。
以上就是c# 程序从对象列表中查找整数并使用 linq 对它们进行排序的详细内容。
其它类似信息

推荐信息