本帖最后由 叶征东 于 2012-10-3 14:23 编辑
public static void toHexByLookupMethod(int num){//------假如num=60
char[] chs = {'0','1','2','3',
'4','5','6','7',
'8','9','A','B',
'C','D','E','F',};
char[] arr = new char[8];//----arr.length=8.
int pos = arr.length; (1)pos=8;
while(num!=0){ (2)60!=0,true (6)3!=0,true, (10)num=0,false,不再执行while里面的语句,而执行后面的for语句.
int temp = num & 15; (3)temp= 60 & 15 =12 (7)temp= 3 & 15 =3
arr[--pos] = chs[temp]; (4)arr[7]=chs[12]='C' (8)arr[6]= chs[3]=3
num = num >>> 4; (5)num=60>>>4=3 (9)num=3>>>4=0
}
for(int x=pos; x<arr.length; x++){ (11)for(int x=6; x<8; x++),注意,pos在第8步时已经变为6了, arr.length=8
System.out.print(arr[x]);
}
}
上面是这段代码的执行步骤,
我觉得还是多看几遍视频,理解思路比较重要,多看几遍就懂了
呵 |