如何将二维数组的整数转换为java中的图像?

时间:2015-07-01 19:22:59

标签: java arrays graphics integer 2d

我有一组正整数。我如何将其显示为图像?我还没有数组包含的值范围或数组的大小。提出了类似的问题here。但是,如果不搜索可能非常大的数组,我不知道可能的值。在效率和代码长度方面,这样做的最佳方法是什么?

以下是数据可能是

的一个小例子
    0   2   4   6   8   10  12  14  16
    2   2   6   6   10  10  14  14  18
    4   6   4   6   12  14  12  14  20
    6   6   6   6   14  14  14  14  22
    8   10  12  14  8   10  12  14  24
   10   10  14  14  10  10  14  14  26
   12   14  12  14  12  14  12  14  28
   14   14  14  14  14  14  14  14  30
   16   18  20  22  24  26  28  30  16
   18   18  22  22  26  26  30  30  18

1 个答案:

答案 0 :(得分:2)

看看here

int xLenght = arr.length;
int yLength = arr[0].length;
BufferedImage b = new BufferedImage(xLenght, yLength, 3);

for(int x = 0; x < xLenght; x++) {
    for(int y = 0; y < yLength; y++) {
        int rgb = (int)arr[x][y]<<16 | (int)arr[x][y] << 8 | (int)arr[x][y]
        b.setRGB(x, y, rgb);
    }
}
ImageIO.write(b, "Doublearray", new File("Doublearray.jpg"));
System.out.println("end");

现在,重构此代码以读取正确的输入。