我有以下课程.
public class PriceDetails
{
public float AverageNightlyRate { get; set; }
}
public class RoomContainer
{
public PriceDetails RoomPriceDetails { get; set; }
public string PromotionDescription { get; set; }
}
public List<RoomContainer> HotelRooms { get; set; }
Run Code Online (Sandbox Code Playgroud)
列表HotelRooms有10件物品.我想找到AverageNightlyRate的最大值 .
我正在使用for循环来迭代.我能以有效的方式做到吗?
Ser*_*kiy 15
var maxAverageRate = HotelRooms.Max(r => r.RoomPriceDetails.AverageNightlyRate)
Run Code Online (Sandbox Code Playgroud)
如果RoomPriceDetails
可能的话null
,那么:
var maxAverageRate = HotelRooms.Where(r => r.RoomPriceDetails != null)
.Max(r => r.RoomPriceDetails.AverageNightlyRate);
Run Code Online (Sandbox Code Playgroud)
要么
var maxAverageRate = HotelRooms.Select(room => room.RoomPriceDetails)
.Where(price => price != null)
.Max(price => price.AverageNightlyRate);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
34020 次 |
最近记录: |