(1) 奇偶数判断:number&1 == 0 来判断,不要用:number%2 == 0,当number为负的奇数时候,会失效。
System.out.println((-1) % 2); 这个结果是-1,而不是1。当用number%2 == 1判断时,容易忽略。
(2)浮点数精确计算,应该使用BigDecimal类来操作:
System.out.println(2.00-1.10); 这个结果是0.8999999,而不是0.9。
System.out.println(new BigDecimal(String.valueOf(2.00)).subtract((new BigDecimal(String.valueOf(1.10)))));结果是0.9;注意在构造对象时,用String作为参数。
(3)窄数字类型扩展
规则:如果扩展之前的数值类型为有符号类型(int,byte,short等),执行符号扩展;如果为无符号类型(char),直接扩展0;
例子1:(int)(char)(byte)-1 = 65535;
(byte)-1 = 1111,1111
(char)(byte)-1 = 1111,1111,1111,1111
(int)(char)(byte)-1 &#