赞
踩
一、整形溢出
JAVA中,基本数据类型中,短整型为2个字节,整型为4个字节,长整型为8个字节,但是首位都为符号位,1为负,0为正。当计算产生进位到符号位时,数字会由整数变为负数,这种情况就叫做整型溢出,如:
- public class Demo7 {
- public static void main(String[] args) {
- int a = 1000000000;
- int b = 1000000000;
- System.out.println(a*b);
- }
-
- }
两个整数相乘,结果如下:
这就是因为计算进位,将符号位的“0”变为了“1”,此时,解决的方法如下:
1.如果运算结果不超过long型,可以用long格式去接收int型。
2.通常情况下,运算中,有一个是由程序定义的,因此只需要限制该数的输入范围(也称最大值、临界值)。
3.如果用户输入的都是字符串,则限制字符串的长度。
4.通过biginteger进行运算。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。