【发布时间】:2011-08-12 13:47:51
【问题描述】:
我了解java中的溢出,但是什么叫做下溢呢? java又是怎么处理的呢?
【问题讨论】:
-
你是指整数下溢还是浮点下溢?
-
据我所知,答案是没有。您将获得与使用一系列全加器完全相同的行为。
我了解java中的溢出,但是什么叫做下溢呢? java又是怎么处理的呢?
【问题讨论】:
下溢与上溢正好相反。
int high = Integer.MAX_VALUE;
int overflow = high + 1;
int low = Integer.MIN_VALUE;
int underflow = low - 1;
您以同样的方式处理它:确保输入不会使自己处于上溢/下溢的范围内,并让用户意识到潜在的缺点。 (以Math.abs(Integer.MIN_VALUE) == Integer.MIN_VALUE 为例。)
【讨论】:
引用Wikipedia:
术语算术下溢(或 “浮点下溢”,或者只是 “下溢”)是一个条件 可能发生的计算机程序 浮点数的真实结果 操作幅度较小 (即更接近于零)比 可表示为的最小值 中的普通浮点数 目标数据类型。
其他人似乎认为下溢与溢出完全相反,但我从未见过这个定义。
【讨论】: