这有一个可能很简单的答案,但我无法弄清楚 -
double Result = 1 / 12;
Run Code Online (Sandbox Code Playgroud)
返回0,而
double Result2 = 24 / 12;
Run Code Online (Sandbox Code Playgroud)
返回2
发生了什么,我该如何解决?
试试这个:
double Result = 1 / (double)12;
Run Code Online (Sandbox Code Playgroud)
或这个:
double Result = 1 / 12D;
Run Code Online (Sandbox Code Playgroud)
在C#(以及许多其他语言)中,整数除法返回一个整数.通过将一个操作数强制转换为double或明确声明一个文字,double您可以强制除法表达式返回double小数位后的截断而不截断.