gpt4 book ai didi

java - java中2个6位数字的乘法

转载 作者:行者123 更新时间:2023-12-03 01:59:06 24 4
gpt4 key购买 nike

为什么下面代码的输出结果是1345094336而不是39999800000?我应该如何编辑它?我相信这与整数溢出有关。

public class testC {
public static void main(String[] args) {
long product = 199999 * 200000;
System.out.println(product);
}
}

最佳答案

两个整数 199999 * 200000 相乘是 39999800000,大于整数

storage capacity.
width minimum maximum

SIGNED
byte: 8 bit -128 +127
short: 16 bit -32 768 +32 767
int: 32 bit -2 147 483 648 +2 147 483 647
long: 64 bit -9 223 372 036 854 775 808 +9 223 372 036 854 775 807

UNSIGNED
char 16 bit 0 +65 535

因此,您需要在乘法方面将至少一个数字转换为 long要么

(long)199999 * 200000
199999 * (long)200000
199999 * 200000L
199999L * 200000

关于java - java中2个6位数字的乘法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59297794/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com