我有一个班级
public class Score
{
public double marks { get; set; }
}
现在在我的代码中
List<Level1> Obj= new List<Level1>();
Score Object= new Score();
l1.marks=94.345454;
Obj.Add(Object)
//现在无法将对象添加到列表中我需要将值trunacte为 94.34并存储在列表obj。 所以我需要得到输出有94.34 我该怎么做。 提前谢谢你 王子
答案 0 :(得分:2)
将值保持为double,并仅在输出上格式化。
string output = doubleValue.ToString("F2");
Source。举个例子:
doubleNumber = -1898300.1987;
Console.WriteLine(doubleNumber.ToString("F1", CultureInfo.InvariantCulture));
// Displays -1898300.2
Console.WriteLine(doubleNumber.ToString("F3",
CultureInfo.CreateSpecificCulture("es-ES")));
// Displays -1898300,199
注意文化设置为西班牙语时最后一个输出的小数点逗号。
答案 1 :(得分:0)
您可以在marks
属性设置器中执行此操作:
value -= value % 0.01
这将从value
减去0.005454,因此给你留下正确的小数点数(在这种情况下,2)
类似的东西:
public class Score {
private double m_marks;
public double marks {
get { return m_marks; }
set { m_marks = value - (value % 0.01); }
}
}
答案 2 :(得分:0)
您可以使用msdn
上显示的Math.Round(数字,精度)