当给定值大于数据类型的最大规定大小时,就会发生溢出。溢出条件可能导致错误,或者现在编程语言的实现可以自行处理它。
为了显示数据类型的溢出,我以float数据类型为例。浮点数据类型是单精度32位IEEE 754浮点。
float数据类型的范围是-
approximately ±3.40282347E+38F
以下程序显示Java中数据类型的溢出。
public class Demo { public static void main(String[] args) { System.out.println("Displaying Overflow... "); float val1 = 3.3976835E38f; System.out.println(val1 * 25f); } }
输出结果
Displaying Overflow... Infinity
在上面的程序中,float变量被初始化为。
float val1 = 3.3976835E38f;
之后,对其执行乘法运算以检查是否溢出。
val1 * 25f;
由于它扩展了最大范围,因此将返回“ Infinity”作为输出。