Java-cast不产生预期的输出
0.0打印到屏幕上。为什么?为什么演员阵容没有达到预期效果 如果以这种方式声明测试Java-cast不产生预期的输出,java,math,casting,Java,Math,Casting,0.0打印到屏幕上。为什么?为什么演员阵容没有达到预期效果 如果以这种方式声明测试 public class Test { public static void main(String[] args) { int test = 1; System.out.println((double)(Math.pow(test/++test, 2))); } 我得到了我想要打印的东西。。。0.25. 为什么? 我是编程新手,我正在到处玩。阅读这一级别的一些文档几乎毫无用处。您正在进行整数
public class Test {
public static void main(String[] args) {
int test = 1;
System.out.println((double)(Math.pow(test/++test, 2)));
}
我得到了我想要打印的东西。。。0.25.
为什么?
我是编程新手,我正在到处玩。阅读这一级别的一些文档几乎毫无用处。您正在进行整数除法。所以把线路改成
double test = 1;
要进行双除法,演员阵容来得太晚了。您已经编写了
(int)1/(int)2
,并生成了(int)0
。将0
强制转换为double
不会恢复截断的数据。
System.out.println((Math.pow(test/(double)++test, 2)));