在C#中,整数变量除以常量时如何获得双值?
这是我代码的一部分。我使用CalceEngine库在三个文本框中进行数学运算。我想在labelSTDW.Text中得到一个四舍五入的数字,但结果是整数。target1具有整数值,但target1/60可以具有双倍值。我的问题是labelSTDW.Text始终具有整数值。 我怎样才能解决这个问题在C#中,整数变量除以常量时如何获得双值?,c#,rounding,C#,Rounding,这是我代码的一部分。我使用CalceEngine库在三个文本框中进行数学运算。我想在labelSTDW.Text中得到一个四舍五入的数字,但结果是整数。target1具有整数值,但target1/60可以具有双倍值。我的问题是labelSTDW.Text始终具有整数值。 我怎样才能解决这个问题 int target1, target2, target3; double STDWorker, STDTechnician, STDExpert; CalcEngine
int target1, target2, target3;
double STDWorker, STDTechnician, STDExpert;
CalcEngine.CalcEngine CE = new CalcEngine.CalcEngine();
int.TryParse(CE.Evaluate(textBoxTLA.Text).ToString(), out target1);
int.TryParse(CE.Evaluate(textBoxTTE.Text).ToString(), out target2);
int.TryParse(CE.Evaluate(textBoxTEX.Text).ToString(), out target3);
TimeSpan timespanconversion = new TimeSpan(0, target1+target2+target3, 0);
labelTmin.Text = $"Total Time: {timespanconversion.Days}D-{timespanconversion.Hours}H:{timespanconversion.Minutes}m";
STDWorker = target1 / 60;
STDTechnician = target2 / 60;
STDExpert = target3 / 60;
labelSTDW.Text = $"Worker Work Time: {Math.Round(STDWorker, 2)}";
在除以60之前,将
target1
转换为double
Convert.ToDouble(target1)/60
会给你双倍的回报。调用Convert.ToDouble
太过分了。投吧。更好的是,使用double
文本,变量将升级为double
,例如target/60.0
几个好的副本之一: