欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C#中List集合使用Max()方法查找到最大值的实例

程序员文章站 2022-05-27 18:49:15
在c#的list集合操作中,有时候需要查找到list集合中的最大值,此时可以使用list集合的扩展方法max方法,max方法有2种形式,一种是不带任何参数的形式,适用于一些值类型变量的list集合,另...

在c#的list集合操作中,有时候需要查找到list集合中的最大值,此时可以使用list集合的扩展方法max方法,max方法有2种形式,一种是不带任何参数的形式,适用于一些值类型变量的list集合,另一种是带lambda表达式书写形式的,此方法可适用于获取list集合中某一个属性的最大值。

(1)不带任何参数的max方法形式举例,程序调用形式如下:

list list1 = new list() { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };

var maxvalue = list1.max();

运算结果为:maxvalue=10。

(2)带lambda表达式书写形式的max方法举例

我们需要获取list集合对象testlist集合中对象属性index的最大值,首先看下testmodel的定义:

获取testlist集合中的所有对象的index属性最大值可使用下列语句:

list testlist = new list<consoleapplication1.testmodel>();

var max = testlist.max(t => t.index);

补充知识:c#中list集合使用lastordefault方法查找出最后一个符合条件的元素

在c#的list集合中,firstordefault方法一般用来查找list集合中第一个符合条件的对象,如果未查到则返回相应默认值。其实如果要查找最后一个符合条件的list集合元素对象,可以使用lastordefault方法来实现,lastordefault方法的内部书写形式为lambda表示式的书写形式。

lastordefault方法如果未查找到符合要求的元素对象,将会返回对应默认值。

(1)假设有个list集合对象list1,内部元素为1至10。我们在实际运算中并不知道list1集合中的具体元素情况,但我们需要查找到list1集合中的大于7的符合条件的最后一个元素对象可使用下列语句。

list list1 = new list() { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };

var value=list1.lastordefault(t => t > 7);

(2)如果list集合存储的是引用类型的对象,如自定义类,我们还可以根据某个属性来查找最后一个符合条件的元素对象。

例如有个list集合对象testlist,testmodel类的定义如下:

我们需要查找出testlist中的index值大于7的最后一个符合条件的元素对象可使用下列语句:

var model=testlist.lastordefault(t=>t.index>7);

在上面的2个例子中,t=>t为lambda表达式的语句写法,t代表list集合中的元素对象。

以上这篇c#中list集合使用max()方法查找到最大值的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。