代码:
10进制转二进制, java 代码只提供了int 转,其他可以通过int 来转
package decimal2binary;
/**
* 各种类型10进制转2进制, char 型转byte 型
* @author
*
*/
public class Decimal2binary {
/**
* param 数据
* param 类型的位数,int 32,char 16,
* @return
*/
public String toBinaryString(Integer needConvertValue ,int bitNumber){
String resultBinaryString = "";
int intNeedConvertValue = needConvertValue;
if((Integer.toBinaryString(intNeedConvertValue)).length()
for(int i=0;i
resultBinaryString += "0";
resultBinaryString += Integer.toBinaryString(intNeedConvertValue);//这个函数只返回不为0的位,前面为0的位去掉了
}
return resultBinaryString;
}
public static void main(String[] args) {
Decimal2binary decimal2binary = new Decimal2binary();
char c = 'a';
int aaa = c;
byte bb = 1;
aaa = c;
System.out.println(decimal2binary.toBinaryString(aaa, 16));
byte char2byte[] = new byte[2];
char2byte[1] = (byte)(c & 0x00ff);
char2byte[0] = (byte)((c & 0xff00) >>>8);
System.out.println(decimal2binary.toBinaryString((int)char2byte[0],8) +"--"+ decimal2binary.toBinaryString((int)char2byte[1],8));//高8位,低8位
}
}结果输出:
0000000001100001 00000000--01100001