为什么这两段Java代码产生2个不同的结果?

问题描述 投票:0回答:1
    int secs_per_day = 24 * 60 * 60;

    int LIGHTSPEED = 186000;        // 186,000 mi/sec speed of light

    long miles_traveled = secs_per_day * LIGHTSPEED;

    System.out.println("Miles traveled by light in a day: " + miles_traveled);

================================================ ==================================

    long secs_per_day = 24 * 60 * 60;

    long LIGHTSPEED = 186000;       // 186,000 mi/sec speed of light

    long miles_traveled = secs_per_day * LIGHTSPEED;

    System.out.println("Miles traveled by light in a day: " + miles_traveled);
java int long-integer
1个回答
0
投票

整数数学。将任何项转换为long,结果为long(而不是int)。喜欢,

© www.soinside.com 2019 - 2024. All rights reserved.