我想了解为什么在setter中设置double值后,该值为null。
代码如下:
public Class Product
{
private double? u_total;
public double? Total
{
get
{
return u_total;
}
set
{
u_total = value;
}
}
}
当我打电话时:
for (i=0; i<list.Count; i++)
{
products.Total += list[i].Price !=null ? (double?)quantity*list[i].Price : 0;
}
对于第一种情况,list [1] .Price(double?)是1234.5,但setter上的值将为null。 而我的produsts.Total 0。
请告知错误。
答案 0 :(得分:4)
我想而不是
if (u_total != null)
应该是
if (u_total == null)