如何把int型转换为byte[]型(4个字节)?---特急 int型的只会是一个字节,而不是字节数组,你把它转化为Integer对象,然后它有一个byteValue() 方法可以返回对应的字节。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public static void main(String[] args) { int source = 0x1001; byte[] result = new byte[ 4 ]; for( int i = 0; i < 4; i++ ){ result[ i ] = (byte)(source >> ( 24 - i*8 )); } for( int i = 0; i < 4; i++ ){ System.out.println( result[ i ] ); } } //把int转成32位2进制,然后在变成byte数组。 public static byte[] toByteArray(int n) { String binaryStr=formatString(Integer.toString(n,2),32,'0'); System.out.println(binaryStr); byte[] result=new byte[4]; int i=0; while(binaryStr.length()-8>=0) { String str=binaryStr.substring(0,8); result[i++]=Integer.valueOf(str,2).byteValue(); binaryStr=binaryStr.substring(8); } return result; }public static String formatString(String str, int size, char c) { //格式化输出 if(str.length()>=size) return str; String result; char[] imp =new char[size-str.length()]; for(int i=0;i<imp.length;i++) imp[i]=c; result=new String(imp); result += str; return result; }调用:byte[] byteTemp=toByteArray(1024);for(int i=0;i<byteTemp.length;i++) System.out.println(byteTemp[i]);结果:0040 byte[] b=new byte[4];b[0]=(byte)(i&0x000000FF);b[1]=(byte)((i>>8)&0x000000FF);b[2]=(byte)((i>>16)&0x000000FF);b[3]=(byte)((i>>24)&0x000000FF); 先转化成integer在做字节数组。 请教JTable类使用问题 final 变量的问题 编程需要的电脑配置-6月1结贴=十万火急 关于类路径的问题? 能不能从jvm卸载类? 招聘java人才,从快,工作地点北京 请大家给我讲讲Swing中Layout和serPerferedSize, setSize的关系吧 求助:linux下java图形界面中文无法显示 请问如何在一个JFrame中放置一张图片作为背景? 如何在窗体初始化的时候不设置JdbTable控件中行的焦点! 传输.jpg的图片文件,用那个IO类啊?? 如何把HashTable每一个对象的value和key值都取出来?
int source = 0x1001;
byte[] result = new byte[ 4 ];
for( int i = 0; i < 4; i++ ){
result[ i ] = (byte)(source >> ( 24 - i*8 ));
}
for( int i = 0; i < 4; i++ ){
System.out.println( result[ i ] );
}
}
public static byte[] toByteArray(int n) {
String binaryStr=formatString(Integer.toString(n,2),32,'0');
System.out.println(binaryStr);
byte[] result=new byte[4];
int i=0;
while(binaryStr.length()-8>=0) {
String str=binaryStr.substring(0,8);
result[i++]=Integer.valueOf(str,2).byteValue();
binaryStr=binaryStr.substring(8);
}
return result;
}
public static String formatString(String str, int size, char c) { //格式化输出
if(str.length()>=size)
return str;
String result;
char[] imp =new char[size-str.length()];
for(int i=0;i<imp.length;i++)
imp[i]=c;
result=new String(imp);
result += str;
return result;
}调用:
byte[] byteTemp=toByteArray(1024);
for(int i=0;i<byteTemp.length;i++)
System.out.println(byteTemp[i]);
结果:0040
b[0]=(byte)(i&0x000000FF);
b[1]=(byte)((i>>8)&0x000000FF);
b[2]=(byte)((i>>16)&0x000000FF);
b[3]=(byte)((i>>24)&0x000000FF);