📄 bitmanipulation.java
字号:
//:c03 :BitManipulation.java
//Using the bitwise operators.
import java.util.*;
public class BitManipulation
{
public static void main(String[] args)
{
Random rand=new Random();
int i=rand.nextInt();
int j=rand.nextInt();
PBinInt("-1",-1);
PBinInt("+1",+1);
int maxpos=2147483647;
PBinInt("maxpos",maxpos);
int maxneg=-2147483648;
PBinInt("maxneg",maxneg);
PBinInt("i",i);
PBinInt("j",j);
PBinInt("~i",~i);
PBinInt("-i",-i);
PBinInt("i&j",i&j);
PBinInt("i|j",i|j);
PBinInt("i^j",i^j);
PBinInt("i<<5",i<<5);
PBinInt("i>>5",i>>5);
PBinInt("(~i)>>5",(~i)>>5);
PBinInt("i>>>5",i>>>5);
PBinInt("(~i)>>>5",(~i)>>>5);
long l=rand.nextLong();
long m=rand.nextLong();
PBinLong("-1L",-1L);
PBinLong("+1L",+1L);
long ll=9223372036854775807L;
PBinLong("maxpos",ll);
long lln=-9223372036854775808L;
PBinLong("maxneg",lln);
PBinLong("l",l);
PBinLong("~l",~l);
PBinLong("-l",-l);
PBinLong("m",m);
PBinLong("l&m",l&m);
PBinLong("l|m",l|m);
PBinLong("l^m",l^m);
PBinLong("l<<5",l<<5);
PBinLong("l>>5",l>>5);
PBinLong("(~l)>>5",(~l)>>5);
PBinLong("l>>>5",l>>>5);
PBinLong("(~l)>>>5",(~l)>>>5);
PBinLong("(~l)>>>5",(~l)>>>5);
}
static void PBinInt(String s,int i)
{
System.out.println(s+",int:"+i+",binary:");
System.out.print(" ");
for(int j=31;j>=0;j--)
{
if(((1<<j)&i)!=0)
System.out.print("1");
else
System.out.print("0");
}
System.out.println();
}
static void PBinLong(String s,long l)
{
System.out.println(s+",long;"+l+",binary:");
System.out.print(" ");
for(int i=63;i>=0;i--)
{
if(((1L<<i)&l)!=0)
System.out.print("1");
else
System.out.print("0");
}
System.out.println();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -