package practice.converttobytes;
public class ConvertToBytes {
//int型转换为byte[]
public static byte[] int2Bytes(int a){
byte[] arr=new byte[4];
for(int i=0;i<arr.length;i++){
arr[i]=(byte)((int)(a>>i*8)&0xff);
}
return arr;
}
//byte[]转换为int型
public static int bytes2int(byte[] arr){
int result=0;
for(int i=0;i<arr.length;i++){
result +=(int)((arr[i]&0xff)<<i*8);
}
return result;
}
//long型转换为byte[]
public static byte[] long2Bytes(long a){
byte[] arr=new byte[8];
for(int i=0;i<arr.length;i++){
arr[i]=(byte)((long)(a>>i*8)&0xff);
}
return arr;
}
//byte[]转换为long型
public static long bytes2long(byte[] arr){
long result=0;
for(int i=0;i<arr.length;i++){
result +=(long)((arr[i]&0xff)<<i*8);
}
return result;
}
public static void main(String[] args) {
byte[] arr=ConvertToBytes.int2Bytes(8143);
System.out.println(arr[0]+","+arr[1]+","+arr[2]+","+arr[3]);
System.out.println(ConvertToBytes.bytes2int(arr));
byte[] arr1=ConvertToBytes.long2Bytes(900120012);
System.out.println(arr1[0]+","+arr1[1]+","+arr1[2]+","+arr1[3]+","+arr1[4]+","+arr1[5]+","+arr1[6]+","+arr1[7]);
System.out.println(ConvertToBytes.bytes2long(arr1));
//字符串转换为字节数组
String st="热爱生活";
byte[] stb=st.getBytes();
for (byte b : stb) {
System.out.println(b);
}
//字节数组转换为字符串
String st1=new String(stb);
System.out.println(st1);
}
}
int、long、String类型数据与字节数组转换
最新推荐文章于 2022-06-30 09:07:34 发布