2011-03-24 67 views
0

如果移位並不總是相同的,即我可能需要使用相同的函數來調整2或4個字符的大小,那麼循環移位字節數組的值的方法是什麼?這是我迄今爲止在java中實現循環數組字節移位的最佳方式是什麼?

for(int j=0; j<param; j++){ 
     if(j == 0){ 
      for(int i=0; i<myArray.length;i++){ 
       result[i] = (byte) (myArray[i]<<2); 
      } 
     } else{ 
      for(int i=0; i<result.length;i++){ 
       if((result.length-i) > 2){ 
        result[i] = (byte) (result[i]<<2); 
       } 
      } 
     } 
    } 

總結,我要循環移位myArray的值的兩倍PARAM並在數組「結果」返回結果。當參數'param'不固定時,我不知道如何做到這一點。

+0

沒有您的代碼有問題。條件「如果(PARAM == 0)」永遠不能被滿足,爲J永遠不能<0. – davmac 2011-03-24 03:23:48

+0

該死,我的意思是Ĵ代替PARAM。我將編輯它 – eLobato 2011-03-24 03:25:13

回答

0

第一:如果可能的話,使用java.util.BitSet中對於這樣的任務。

我不知道,但不知何故位集合本身並沒有變化,但this source看起來它付諸實施。

+0

爲什麼Bitset比使用標準字節數組更好? – eLobato 2011-03-24 03:29:08

相關問題