demo:
/**
* 2020年3月30日下午3:17:14
*/
package testByteToBinary;
/**
* @author XWF
*
*/
public class TestByteToBinary {
/**
* @param args
*/
public static void main(String[] args) {
byte b = 111;
{
long startTime = System.nanoTime();
String str = Integer.toBinaryString(b);
String newStr = String.format("%8s", str).replaceAll(" ","0");
System.out.println(newStr);
long endTime = System.nanoTime();
System.out.println("时间:" + (endTime - startTime));
}
{
long startTime = System.nanoTime();
String str = Integer.toBinaryString(b);
StringBuilder strBuilder = new StringBuilder();
switch(str.length()) {
case 1:
strBuilder.append("0000000").append(str);
break;
case 2:
strBuilder.append("000000").append(str);
break;
case 3:
strBuilder.append("00000").append(str);
break;
case 4:
strBuilder.append("0000").append(str);
break;
case 5:
strBuilder.append("000").append(str);
break;
case 6:
strBuilder.append("00").append(str);
break;
case 7:
strBuilder.append("0").append(str);
break;
}
System.out.println(strBuilder.toString());
long endTime = System.nanoTime();
System.out.println("时间:" + (endTime - startTime));
}
{
long startTime = System.nanoTime();
StringBuilder strBuilder = new StringBuilder();
for(int x=7; x>=0; x--) {
strBuilder.append((b>>x) & 0x01);
}
String str = strBuilder.toString();
System.out.println(str);
long endTime = System.nanoTime();
System.out.println("时间:" + (endTime - startTime));
}
}
}
几组结果: