大家好,我有以下代码,并重新调整异常,说" double无法转换为String&#34 ;;对我来说一切看起来都不错,但不知道我是否遗漏了什么。 感谢;
double operadorD=this.nAleatoreo.nextInt(9);
double operandoD=this.nAleatoreo.nextInt(3);
double potencia =Math.pow(operadorD, operandoD);
generaRespuestas(Integer.parseInt(potencia));
break;
* generaRespuesta收到一个int,这就是为什么我将它转换为int。
答案 0 :(得分:0)
parseInt接受一个字符串。如果你想从double转换为int,那么parseInt就不是这样了。一种方法(抛弃精度)就是简单地施放它。
generaRespuestas((int)potencia);
答案 1 :(得分:0)
是。这是因为Integer#parseInt(String)
需要的java.lang.String
不是int
。但是,您当然可以将Math.pow
的结果转换为int
(相应的精度损失)。
int potencia = (int) Math.pow(operadorD, operandoD);
generaRespuestas(potencia);
答案 2 :(得分:0)
Integer.parseInt()
:需要一个字符串参数。但Math.pow()
正在向您发送double
变化
double potencia =Math.pow(operadorD, operandoD);
到
int potencia =(int)Math.pow(operadorD, operandoD);