二进制转换

来源:互联网 发布:sql语句时间格式化 编辑:程序博客网 时间:2024/05/21 17:00
public class 二进制转换 {
public static void main(String[] args) {
byte[] 字节数组 = {-1,1,89,127,-128,127};
String[] 二进制字符串数组 = 字节数组转换成二进制字符串数组(字节数组);
for(String 二进制字符串 : 二进制字符串数组)
System.out.println(二进制字符串);
byte[] 字节数组2 = 二进制字符串数组转换成字节数组(二进制字符串数组);
for(byte 字节 : 字节数组2)
System.out.println(字节);
}

public static String[] 字节数组转换成二进制字符串数组(byte[] 字节数组){
String[] 二进制字符串数组 = new String[字节数组.length];
for(int i=0;i<字节数组.length;i++){
StringBuilder 二进制字符串 = new StringBuilder();
byte 字节 = 字节数组[i];
for(int y=128;y>0;y/=2)
二进制字符串.append((字节&y)==0?0:1);
二进制字符串数组[i] = 二进制字符串.toString();
}
return 二进制字符串数组;
}

public static byte[] 二进制字符串数组转换成字节数组(String[] 二进制字符串数组){
byte[] 字节数组 = new byte[二进制字符串数组.length];
for(int i=0;i<二进制字符串数组.length;i++){
char[] charArray = 二进制字符串数组[i].toCharArray();
byte b = 0;
for(int y=0;y<charArray.length;y++)
b += charArray[y]==48?0:128>>y;
字节数组[i] = b;
}
return 字节数组;
}
}
原创粉丝点击