java基础之int数值溢出
来源:互联网 发布:xbox360手柄驱动mac版 编辑:程序博客网 时间:2024/06/05 05:40
int类型在java中占据4个字节,共32位,除去最高位符号位,可以表示的最大值为2^31,即2147483647.
当数据运算结果超过int类型的最大值时,就会发生数据溢出:
看一下两段读代码:
代码1:
public class IntOutOfBoundary {
public static void main(String[] args) {int a=2147483647;
int b=2;
int c=a+b;
System.out.println(c);
}
}
输出结果:c=-2147483647,发生了数据溢出,如果b=1,c=-2147483648,为int类型表示的最小值.
代码2:
public class IntOutOfBoundary {
public static void main(String[] args) {
int a=2147483647;
long b=2;
long c=a+b;
System.out.println("c="+c);
}
}
输出结果:c=2147483649c=2147483649,数据运算时,发生了自动类型转换,结果也为长整型,不会发生数据溢出.实际变成中,可以将运算的数值进行强制类型转换,避免数值溢出.
阅读全文
0 0
- java基础之int数值溢出
- java基础之大数值
- Java 数值溢出
- Java 数值溢出
- Java int 最大值溢出
- java学习之数值型别(int,float,double等)
- java学习之数值型别(int,float,double等)
- java int 乘法溢出问题
- java int 乘法溢出问题
- JavaScript基础之数值
- JAVA基础(007_两个int型变量的数值交换)
- java基础之数值类型转换的问题
- java基础之——奇怪的数值
- 一个隐形的java int溢出
- Java隐晦的int溢出 切忌想当然
- java 中 int整数相乘溢出
- Java隐晦的int溢出 切忌想当然
- JS基础之数值转换
- Mybatis(一)—实现对数据库的增删改查操作
- 针对架构设计的几个痛点,我总结出的架构原则和模式
- 什么情况下,发送端的send函数成功, 但发送端抓不到对应的网络包?------深入理解send函数
- 如何判断变量是数组还是对象
- 自主编程实现栈和链式栈
- java基础之int数值溢出
- eclipse 和 myeclipse 代码自动提示
- java(9)集合类(转载)
- 计算机网络--HTTP协议
- datagridview实现批量插入与更新
- Debugger APIs
- android 牛人 汇集
- Yann LeCun:深度学习硬件前瞻
- Activity的生命周期以及两个activity之间跳转的问题