稍微寫了下,供妳參考,見笑了。
public?int?getIntegerComplement(int?N){ int?inversion=0; String?binaryString=Integer.toBinaryString(N); char[]?charArray=binaryString.toCharArray(); StringBuffer?sb=new?StringBuffer(); for(int?i=0;i<charArray.length;i++){switch?(charArray[i])?{
case?'0':
sb.append("1");
break;
case?'1':
sb.append("0");
break;
default:
System.out.println("error?happens");
break;
}
} String?stringAfterInversion=sb.toString(); System.out.println("stringAfterInversion:"+stringAfterInversion); inversion=Integer.parseInt(stringAfterInversion,?2); System.out.println("inversion?value?is:"+inversion); return?inversion; }