0

我是 JAVA 新手,我正在努力学习这门语言;如果我很傻,请原谅我。

所以我在测试 Math.Pow() 时发现,当我在第二个参数中使用除法函数时,无论我在两个参数中输入什么值,我的结果总是“1.0”。帮助?

public static void main(String[] args) {

    double a= 27 , b = 1/3 ;
    System.out.println(Math.pow(a,b));
}

运行:1.0 构建成功(总时间:0 秒)

4

2 回答 2

5

1/3为零。Math.pow(a,0)1为所有人a != 0,特别是为a = 27

在将1/3结果转换为 a 之前,使用整数除法在两个整数之间执行除法double。您可以通过确保使用双除法完成数字来获得您正在寻找的结果,例如1.0/3

于 2013-08-31T01:49:05.560 回答
2

1/3 是整数除法,在将其设置为等于 b 之前,它首先会将 0 作为整数计算。这将使 b = 0,所以 Math.pow(27, 0) = 1。

将其更改为 1.0/3.0,然后变为 0.3333。这就是你想要的。

于 2013-08-31T01:50:30.977 回答