前言
要在一个集合中,找到其中元素的某个属性的最大值出来,比如这个集合中的元素如下:
public class DataItem
{
public int num {get; set;}
public string name {get; set;}
public DataItem(int _num)
{
this.num = _num;
}
}
有这样一个集合List<DataItem> itemList
要找到这个集合里面的元素中num
属性值最大的出来
方法
int maxnum = itemList.Any() ? itemList.Max(x=>x.num) : 0;
int maxnum = itemList.DefaultIfEmpty(new DataItem(0)).Max(x=>x.num);
int maxnum = itemList.Max(x=>(int?)x.num) ?? 0;
【
int?
】表示int值类型可以为null
【空合并运算符??
】用于定义引用类型和可空类型的默认值。如果此运算符的左操作符不为Null,则此操作符返回左操作数,否则返回右操作数。