Math.abs陷阱
来源:互联网 发布:c语言输出汉字 编辑:程序博客网 时间:2024/04/27 22:39
Math.abs(..)如果其参数等于Integer.MIN_VALUE,那么产生的
结果与该参数相同,它是一个负数。所以下面程序你要小心。当然不不要去运行啦,这个要好产时间的哦,呵呵
package com.yinbodotcc;
import java.util.*;
public class SuspiciousSort {
public static void main(String[ ] args) {
final int MODULUS = 3;
int[] histogram = new int[MODULUS];
int i = Integer.MIN_VALUE+1;
do {
//histogram[Math.abs(i) % MODULUS]++;//这个写法会编译出问题,越界的
histogram[mod(i, MODULUS)]++;
} while (i++ != Integer.MAX_VALUE);
for (int j = 0; j < MODULUS; j++)
System.out.println(histogram[j] + " ");
}
//下面这个函数就是为了解决这个Math.abs带来的问题
private static int mod(int i, int modulus) {
int result = i % modulus;
return result < 0 ? result + modulus : result;
}
}
- Math.abs陷阱
- math.min() and math.abs()
- Math.abs方法
- Math.abs的解析
- Java Math.abs
- Math.abs()方法
- Math.abs( x )
- Math.abs(int) in Java
- 严防Math.abs()返回负数
- Math.abs()方法不一定总是返回整数
- Math.abs()不能做到的事情
- Math.abs()不能办到的事
- String.valueOf(Math.abs(new Random().nextInt())
- math.h的abs返回值()
- java函数中math.abs(x)是什么意思
- 8皇后代码,abs在stdlib中,不在math中
- js Math.abs,ceil,floor,round,toFixed函数的使用
- Math.abs为Integer.Min_VALUE返回错误的值
- hibernate查询语句---HQL
- 管理 Java 类路径(UNIX 和 Mac OS X)
- Java SE 6 的 Web Service实例演示
- 了解 Eclipse 中的 JFace 数据绑定系列
- 变量
- Math.abs陷阱
- 【java.lang】〖Runtime〗如何正确地应用Runtime类调用程序
- 配置驱动的开发
- XForms 专题
- 玛丽发错药之后-发人深省的管理故事
- find搜索文件内容
- Dimensions (Episode 204)
- HQL专题
- 利用.NET语言开发自己的脚本语言(一)