版权声明: https://blog.csdn.net/Dongguabai/article/details/82344473
下面看一个简单的例子:
输出结果为:
这是一个典型的int溢出的问题。
因为Java在做乘法时,如果没有显示确定的数据类型,那么他会默认按照int数据类型进行计算,但是第一行代码在运算时导致int数据溢出,所以出现了负数的情况。
第二行代码是将计算数强制转换为为long 然后按照long类型运算得出了正确的计算结果。
下面看一个简单的例子:
输出结果为:
这是一个典型的int溢出的问题。
因为Java在做乘法时,如果没有显示确定的数据类型,那么他会默认按照int数据类型进行计算,但是第一行代码在运算时导致int数据溢出,所以出现了负数的情况。
第二行代码是将计算数强制转换为为long 然后按照long类型运算得出了正确的计算结果。