package java中的數據類型;//整形轉化成字節型public class Int_to_Byte {//int轉化為字節數組?public static byte change(int b){??byte[] arr=new byte[4]; ??arr[0]=(byte)((b>>0*8));??return arr[0];?}?public static byte[] change2(int a){??byte[] arr1=new byte[4];??for(int i=0;i<arr1.length;i++){???arr1[i]=(byte)((a>>i*8));??}??return arr1;?}?//byte型轉化成int型?public static int[] cheng3(byte[]arr){??int arr2[]=new int[4];??for(int i=0;i<arr.length;i++){???arr2[i]=(int)(arr[i]<<i*8);??}??return arr2;?}?//輸出?public static void main(String arges[]){?byte arr=Int_to_Byte.change(8143);??System.out.println(arr);??byte arr1[]=Int_to_Byte.change2(8143);??System.out.println(arr1[0]+" "+arr1[1]+" "+arr1[2]+" "+arr1[3]);??int arr2[]=Int_to_Byte.cheng3(arr1);??System.out.println(arr2[0]+arr2[1]+arr2[2]+arr2[3]);?}}
感覺沒什么錯,但是期望的結果是8143,而運行結果為7887
慕粉13727861792
2017-01-29 20:33:25