运算的时候要注意的一些地方

求奇数,取余的时候注意传的参数带负号

isOdd(-1);

public static boolean isOdd(int number) {

return number % 2 != 0;

}

 

Boolean布尔的包装类,有三中状态,考虑三种情况,并不要让抛出空指针异常 用的是&&与运算的短路和非的取反效果;

//1:true  -> 如果config传的是 true  != null && true  -> true && true  结果为 true; //2:false -> 如果config传的是 false != null && false -> true && false 结果为 false; //3:null  -> 如果config传的是 null  != null && null  -> false && null 结果为 false;  //null != null 得到的是false &&有一个false短路不执行与符号的右边代码

Boolean config = getConfig();

if(config != null && config) {    }

public static Boolean getConfig() {

//可能返回true/false/null

}

 

位运算异或   x ^ y ^ y = x;  x ^ x = 0;

x
Y   00101100
Y   00101100
-    00000000   不进位加法

 

左移一位相当于乘以2的1次方,左移n位就相当于乘以2的n次方。

10 << 1 相当于10 * 2^1,10<<n相当于10* 2^n。

右移一位相当于除以2的1次方,右移n位就相当于除以2的n次方。

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注