有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

为什么尽管变量的类型被声明为double,java却给出了一个int太大的错误?

Java为代码的相应行提供了整数太大错误消息,我将在代码的相应段中用******表示:

...

if (input.hasNextDouble()) {
    double number = input.nextDouble();
    if (number >= 10000000000) //***** {
        System.out.print("The number is greater than 10 billion!");
    }
}

...

我认为双精度打印机可以记录大约15位小数。你能告诉我发生了什么事吗


共 (1) 个答案

  1. # 1 楼答案

    将int与double进行比较的事实不会改变可接受的int值

    如果你把数字改成两倍,可能会更清楚

    if (number > 1e10) {
        System.out.print("The number is greater than 10 billion!");
    

    顺便说一句,如果消息“大于”,我会使用>,否则我会使用

    if (number >= 1e10) {
        System.out.print("The number is greater than, or equal to 10 billion!");