java - 类型不匹配 : cannot convert from double to integer in eclipse

标签 java eclipse

编译器报告调用 Math.pow() 的行作为一个错误。我正在制作一个程序,通过使用带有类输入变量的二次公式来计算二次方程的解。为方便起见的箭头

import java.util.*;
public class QuadraticFormula {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("Enter a: ");
        int a = input.nextInt();
        System.out.println("Enter b: ");
        int b = input.nextInt();
        System.out.println("Enter c: ");
        int c = input.nextInt();

    →   int discriminant = (Math.pow(b, 2) - 4*a*c);

        input.close();

    }

}

最佳答案

将其转换为 int:

int discriminant = (int)(Math.pow(b, 2) - 4*a*c);

这是因为 Math.pow() 需要 2 个 double 并返回一个 double 。因此,运行时会将 b2int 向上转换为 double,然后返回 double。然后它将 4ac 向上转换为 double。结果是一个double。它必须被强制转换回int。在这种情况下这是安全的,因为我们知道所有输入值都是 int

关于java - 类型不匹配 : cannot convert from double to integer in eclipse,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59651205/

相关文章:

java - 如何在 Java 中将时间值转换为 YYYY-MM-DD 格式?

java - 如何以编程方式比较eclipse中的目录

Eclipse C++ : How do you quickly switch between header and implementation files?

eclipse - 重命名包后 java.lang.ClassNotFoundException : fr. bordeaux.contactapp.Exceptions.AuthenticationException

java - 如何在Web应用程序中调用Java线程

java - 如何使用Intellij IDEA在Grails 3项目中连接到Oracle数据库?

java - 如何在 Eclipse 中正确设置由 appfuse 创建的多模块 SpringMVC 应用程序?

java - eclipse 不显示目标中的类文件夹

java - 评估来自 SAML 集成的响应时出现 KeyCloak NullPointer 异常

java - 如何使用 Selenium 和 Java 通过类名识别元素并单击它?