2016-10-03 3 views
-1

私は配列のように言っているString[] arrayofbits = new String[256];1バイトのすべてのビットの組み合わせで配列を埋める方法は?

私は256のインデックスの配列を生成したいと思います。インデックス0から始まり、arrayofbits[0] = "00000000"インデックス1 arrayofbits[1] = "00000001"など255番目のインデックスarrayofbits[255] = 11111111になります。それを生成する方法?

+0

まだ試しましたか?もしそうなら、ここにコードを掲示し、具体的に何が動作していないのかを説明してください。そうでなければ、最初にそれを撃つ。 –

+4

'a [i] = i'何か不足していますか? – dasblinkenlight

+1

@dasblinkenlightはい。あなたはOPがループを書く方法を知らないという事実を見逃しています。 –

答えて

0

解決策をコード化するために管理されます。たぶん私の問題であまりにも明確ではなかった、とにかく私を助けてくれた皆さんに感謝します。

String[] arrayofbits = new String[256]; 
    byte bytes; 
    String s; 

    for (int i = 0; i < 256; i++) { 

    bytes = (byte) i; 

    s = (Integer.toBinaryString(0xFF & bytes)).replaceAll(".*(.{8})$", "$1"); 
    s = StringUtils.leftPad(s, 8, "0"); 
    arrayofbits[i] = s; 
    System.out.println("index " + i + " " + s + "\n"); 


    } 
+0

実際に何をしたいのかを明確にするために質問を更新することはできますか? – templatetypedef

+0

私の悪い、私は右の編集をコピーしていない、今更新されました。 – aval

4

はこれを試してみてください:

for(int i = 0; i<256; i++) { 
    arrayofbits[i] = i; //because everything is binary! 
} 
1

あなたは使用することができます。

String asString = Integer.toBinaryString(32); 

をバイナリ文字列にバイトを変換します。つまり、32100000になります。

あなたは、あなたが使用することができ、小数点値111に文字列"111"変換したい場合:

int asDecimal = Integer.valueOf("111"); 

111(111)を返します。

しかし、私は最初の部分だけを気にしています("111"から111への変換は私にはあまり意味がありません)。

関連する問題