0

0

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

PHPz

PHPz

发布时间:2023-09-07 18:57:12

|

997人浏览过

|

来源于tutorialspoint

转载

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 OfType(this System.Collections.IEnumerable source); 

OrderBy() 方法

使用此技术按升序对集合中的元素进行排序。如果提供的源为 null,则此过程也会引发 ArgumentNullException。

语法

public static System.Linq.IOrderedEnumerable
OrderBy list, Func Selector); 

让我们通过一个例子来理解这个问题。

示例

创建一个列表并向其中添加元素。在此示例中,我们采用不同数据类型的对象。

输入

["Tutpoints", 100, "LINQ", 18, “50”, 20, ‘A’, 34] 

对于不同的对象,OfType() 和 OrderBy() 方法将对列表中的整数值进行排序和排列。所以给定输入的输出是

输出

[18, 20, 34,100]

算法

第 1 步  创建对象列表

我们首先创建一个由字符串、整数和字符组合组成的对象列表。

AiBiao.cn
AiBiao.cn

一句话自动生成图表

下载
List list = new List { "Tutpoints", 100, "LINQ", 18, “50”, 20, ‘A’, 34}; 

第 2 步  使用 OfType() 方法查找整数

然后,OfType() 方法将用于过滤列表,以便仅保留整数值。

var integers = list.OfType(); 

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 list = new List { "Tutpoints", 100, "LINQ", 18, "50", 20, 'A', 34 };
      var integers = list.OfType();
      var sortedIntegers = integers.OrderBy(x => x);
      Console.WriteLine("Sorted integer values are:");
      foreach (int integer in sortedIntegers) {
         Console.WriteLine(integer);
      }
   }
} 

输出

Sorted integer values are:
18
20
34
100

结论

在这篇文章中,我们向您展示了如何在 C# 中使用 LINQ 从对象列表中查找整数并对它们进行排序。使用 OfType() 函数从列表中删除除整数值之外的所有值后,我们使用 OrderBy() 方法对整数进行排序。最后,我们使用打印命令将排序后的整数值显示到控制台。我们已经了解了算法,也看到了代码。我们希望本文可以帮助您增强对该主题的了解和理解。

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
数据分析工具有哪些
数据分析工具有哪些

数据分析工具有Excel、SQL、Python、R、Tableau、Power BI、SAS、SPSS和MATLAB等。详细介绍:1、Excel,具有强大的计算和数据处理功能;2、SQL,可以进行数据查询、过滤、排序、聚合等操作;3、Python,拥有丰富的数据分析库;4、R,拥有丰富的统计分析库和图形库;5、Tableau,提供了直观易用的用户界面等等。

683

2023.10.12

SQL中distinct的用法
SQL中distinct的用法

SQL中distinct的语法是“SELECT DISTINCT column1, column2,...,FROM table_name;”。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

323

2023.10.27

SQL中months_between使用方法
SQL中months_between使用方法

在SQL中,MONTHS_BETWEEN 是一个常见的函数,用于计算两个日期之间的月份差。想了解更多SQL的相关内容,可以阅读本专题下面的文章。

348

2024.02.23

SQL出现5120错误解决方法
SQL出现5120错误解决方法

SQL Server错误5120是由于没有足够的权限来访问或操作指定的数据库或文件引起的。想了解更多sql错误的相关内容,可以阅读本专题下面的文章。

1095

2024.03.06

sql procedure语法错误解决方法
sql procedure语法错误解决方法

sql procedure语法错误解决办法:1、仔细检查错误消息;2、检查语法规则;3、检查括号和引号;4、检查变量和参数;5、检查关键字和函数;6、逐步调试;7、参考文档和示例。想了解更多语法错误的相关内容,可以阅读本专题下面的文章。

358

2024.03.06

oracle数据库运行sql方法
oracle数据库运行sql方法

运行sql步骤包括:打开sql plus工具并连接到数据库。在提示符下输入sql语句。按enter键运行该语句。查看结果,错误消息或退出sql plus。想了解更多oracle数据库的相关内容,可以阅读本专题下面的文章。

697

2024.04.07

sql中where的含义
sql中where的含义

sql中where子句用于从表中过滤数据,它基于指定条件选择特定的行。想了解更多where的相关内容,可以阅读本专题下面的文章。

575

2024.04.29

sql中删除表的语句是什么
sql中删除表的语句是什么

sql中用于删除表的语句是drop table。语法为drop table table_name;该语句将永久删除指定表的表和数据。想了解更多sql的相关内容,可以阅读本专题下面的文章。

417

2024.04.29

云朵浏览器入口合集
云朵浏览器入口合集

本专题整合了云朵浏览器入口合集,阅读专题下面的文章了解更多详细地址。

20

2026.01.20

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号