如果我将150除以100,我应该得到1.5。但是当我像下面那样分裂时,我得到1.0:
double result = 150 / 100;
谁能告诉我如何获得1.5?
答案 0 :(得分:11)
尝试:
double result = (double)150/100;
当您像以前一样进行分组时:
double result = 150/100;
devision首先作为Int进行,然后它被转换为double,因此你得到1.0,你需要在等式中得到一个双精度,以便将它除以双精度。
答案 1 :(得分:6)
将其中一个int转换为浮点类型。您应该查看decimal和double之间的区别并确定您想要的,但要使用double:
double result = (double)150 / 100;
答案 2 :(得分:4)
double result = (150.0/100.0)
=
答案 3 :(得分:3)
设为数字float
var result = 150/100f
或者您可以通过添加.0
:
double result=150.0/100
或
double result=150/100.0
答案 4 :(得分:2)
如果您只使用150和100这样的文字值,C#将把它们视为整数,整数数学总是“向下舍入”。您可以为float添加“f”之类的标志,或者为小数添加“m”以不获取整数数学。因此,例如result = 150m/100m
会给出与result = 150/100
不同的答案。