0

私はc型(u8、s16、u32、..)からJavaへの変換(ブール値を含むクラス、および長い値)を行っています。そしてもちろん、ビット数の長さ。

例: u8 signed=false length=8;

ただし、型を int[] に変換する際に

これがあります:

int[] ret = new int[length / 8];
for (int i = 0; i < ret.length; i++) {
  ret[ret.length - 1 - i] = (char) (0xff & (value >> ((ret.length - i - 1) * 8)));
}

たとえば、value=7; 長さ=8

0xff & () は何を達成できますか? 以来

0xff はちょうど 1111 1111 で、7 は 0000 0111 => 結果 0000 0111

それともここで何か他のことが起こっていますか?

4

1 に答える 1