私はバイト配列にInputStreamを持つファイルを読み込み、次に各バイトをintに変更しています。次に、intを別の配列に格納します。これをより効率的にする方法はありますか?具体的には、2つではなく1つの配列を使用する方法がありますか?両方の配列を割り当てることは私のプログラムには長すぎます。Javaの入力ストリームから読み込み中にバイトをintに変更する方法はありますか?
これは(is
が入力ストリームである)私が今やっているものです:
byte[] a = new byte[num];
int[] b = new int[num];
try {
is.read(a, 0, num);
for (int j = 0; j < nPixels; j++) {
b[j] = (int) a[j] & 0xFF; //converting from a byte to an "unsigned" int
}
} catch (IOException e) { }
read(byte [] b、int off、int len)はフルバッファを読み取ることが保証されていないことをご理解ください。 –