byte 1个8位 -2的7次方到2的7次方-1
short 2个8位 -2的15次方到2的15次方-1
int 4个8位 -2的31次方到2的31次方-1
long 8个8位 -2的63次方到2的63次方-1
float 4个8位
double 8个8位
逻辑运算
&& 如果左边为false,右边不参与运算
|| 如果左边为true,右边不参与运算
位运算
3<<2 3左移2位,运算特点:3*2的几次方
6>>1 6右移1位,运算特点:6/2的几次方
>>>无符号右移,数据右移用0补位
面试题一:2*8的高效运算方法?
解答:高效运算首先考虑位运算,8为2的3次方,所以得出2左移3位
面试题二:int a=3,b=5两个数替换,不考虑第三变量情况,如果处理?
解答:a=a^b;b=a^b;a=a^b;原理:一个数异或一个数两次还是原数。
三元运算符
获取两个整数中的较大整数
int a,b;
int max =a>b?a:b;