位移操作符
左移
// << 左移操作符 把数向左移动在底位补0
int a=2;
System.out.println(Integer.toBinaryString(a));
a<<=1;
System.out.println(Integer.toBinaryString(a));
结果
右移
int b=1024;
System.out.println("原数:"+Integer.toBinaryString(b));
b>>=4;
System.out.println("右移后:"+Integer.toBinaryString(b));
int b2=-1024;
System.out.println("原数:"+Integer.toBinaryString(b2));
b2>>=4;
System.out.println("右移后:"+Integer.toBinaryString(b2));
>>>无符号右移
int b=1024;
System.out.println("原数:"+Integer.toBinaryString(b));
b>>>=4;
System.out.println("右移后:"+Integer.toBinaryString(b));
int b2=-1024;
System.out.println("原数:"+Integer.toBinaryString(b2));
b2>>>=4;
System.out.println("右移后:"+Integer.toBinaryString(b2));
结果
char .byte,short也可以进行位移处理他们在位移前会转换为int类型,并结果也是int
产生a-6随机字母
Random r= new Random(26);
for(int i=0;i<30;i++)
{
System.out.print((char)(r.nextInt(26)+'a'));
}
基本类型 大小(bit) 最小值 最大值 包装器类型
boolean Boolean
char 16 Character
byte 8 -127 128 Byte
short 16 -2^15 2^15-1 Short
int 32 -2^31 2^31-1 Integer
float 32 Float
double 64 Double
参考资料:Java编程思想