为什么不读入4字节缓冲区,然后手动重新排列字节?它看起来像这样:
for (int i=0; i < SIZE_Y; i++) { for (int j=0; j < SIZE_X; j++) { inp.read(buffer); int nextInt = (buffer[0] & 0xFF) | (buffer[1] & 0xFF) << 8 | (buffer[2] & 0xFF) << 16 | (buffer[3] & 0xFF) << 24; test_data[j][SIZE_Y - i - 1] = nextInt; }}当然,假定
read读取了所有四个字节,但是如果没有读取,则应检查情况。这样,您在读取过程中将不会创建任何对象(因此不会对垃圾收集器造成压力),您不会调用任何东西,而只是使用按位操作。



