这是代码:
class testsum
{
public static void main(String arg[])
{
double sum=0;
double fraction;
fraction=-1/9;
System.out.println("fraction: "+fraction);
fraction=-1;
fraction=fraction/9;
System.out.println("fraction: "+fraction);
}
}
输出是0
然后-0.11111111
为什么是第一个输出0
而不是-0.11111111111
?
它在第一个示例中进行整数除法,因为这是数字文字的默认类型。尝试将其更改为-1.0/9
(或1d/9d
-d后缀表示a
double
),您应该得到相同的答案。
问题内容: 我有以下代码行: 我希望看到的结果是0.555,但是它将打印出零。有人可以帮我理解为什么会这样吗?我目前正在学习编程,并感谢您的帮助。 谢谢! 问题答案: 发生这种情况是因为您在不知不觉中正在执行Integer Division。为了使计算更快,计算机在不涉及十进制数的情况下使用整数除法,因此会丢失十进制值。 试试看: 要么 要么 要么 要么
问题内容: boolean r = false ; int s = 0 ; while (r == false) ; { s = getInt() ; if (!(s>=0 && s<=2)) System.out.println (“try again not a valid response”) ; else r = true ; } 即使输入3或123,循环也不会终止,文本也不会显示。怎么了
我设法安装了pip,但当我使用pip安装下载的车轮时,它会显示: 该文件与PIP位于同一文件夹(脚本)中。
失败:生成失败,出现异常。 > 其中:Script“C:\flutter\packages\flutter_tools\gradle\flutter.gradle”行:900 错误:任务“:app:CompileFlutterBuildDebug”执行失败。 进程“command”C:\flutter\bin\flutter.bat“已完成,退出值为非零%1 生成在%12s中失败异常:Gradle
php字符串 想通过正则替换 目标1, 将cool work 之外的其它 good work, nice work, great work 替换成 tired,正则怎么写 目标2, 将cool work 之外的其它 good work, nice work, great work 中的good, nice, great替换成 no, 正则怎么写~~ 说明: 除了罗列的good work,nice