gpt4 book ai didi

java - 将数据从二维数组存储到数组

转载 作者:太空宇宙 更新时间:2023-11-04 09:49:20 24 4
gpt4 key购买 nike

首先,我将数据存储到二维数组中,并且代码运行良好。代码如下所示,

  for(int a = 0; a < bitmap1.getWidth(); a++){
// ------ This is X
for(int b = 0; b < bitmap1.getHeight()-1; b++){
// ---------- This is Y
intArray1[a][b] = Integer.toHexString(bitmap1.getPixel(a,b));
intArray2[a][b] = Integer.toHexString(bitmap2.getPixel(a,b));
intArray3[a][b] = Integer.toHexString(bitmap3.getPixel(a,b));
intArray4[a][b] = Integer.toHexString(bitmap4.getPixel(a,b));
intArray5[a][b] = Integer.toHexString(bitmap5.getPixel(a,b));
intArray6[a][b] = Integer.toHexString(bitmap6.getPixel(a,b));
intArray7[a][b] = Integer.toHexString(bitmap7.getPixel(a,b));
intArray8[a][b] = Integer.toHexString(bitmap8.getPixel(a,b));
}
}//end of Nested FOR

然后我使用嵌套for循环来更改数组中的数据,如上所述。但是,这只是我的 8 数组 中的第一个数组。有没有其他方法可以减少如此多的重复代码,而不是复制如下所示的相同代码并将 1st array 转换为 8 array

    int [][] arrayOneZero = new int [array1.length][array1.length];
for(int a = 0; a < array1.length; a++){
for(int b = 0; b < array1.length-1; b++){
if(array1[a][b].equals("ffffffff")){
//This is White
arrayOneZero[a][b] = 1;
}else if(array1[a][b].equals("ff000000")){
//This is Black
arrayOneZero[a][b] = 0;
}else if(array1[a][b].equals("00000000")){
//THis is Black
arrayOneZero[a][b] = 0;
}
}

之后,我想从方法中获取数据,结果全是0,因为我很确定结果将是1或0。但我不知道如何将数据从2D数组写入数组,因为下面显示的代码肯定是错误的。

 int [][] arrayReturned1 = getArrayText(intArray1);
int [] colorValue = new int[bitmap1.getWidth()*bitmap1.getHeight()];
for(int a = 0; a < bitmap1.getWidth(); a++) {
for(int b = 0; b < bitmap1.getHeight()-1; b++) {
arrayReturned1[a][b] = colorValue[a];
}
}

问题已编辑,但问题仍然存在。

最佳答案

好吧,我找到了一个使用 arrayList 来存储数据的解决方案。而且效果很好。

 ArrayList<String>arrayList = new ArrayList<>();
for(int a = 0; a < bitmap1.getWidth(); a++){
for(int b = 0; b < bitmap1.getHeight(); b++){
String a1 = String.valueOf(arrayInput1[a][b]);
String a2 = String.valueOf(arrayInput2[a][b]);
String a3 = String.valueOf(arrayInput3[a][b]);
String a4 = String.valueOf(arrayInput4[a][b]);
String a5 = String.valueOf(arrayInput5[a][b]);
String a6 = String.valueOf(arrayInput6[a][b]);
String a7 = String.valueOf(arrayInput7[a][b]);
String a8 = String.valueOf(arrayInput8[a][b]);
arrayList.add(a1+a2+a3+a4+a5+a6+a7+a8); // Store 1110001 into ArrayList
}
}

希望它可以帮助别人。

关于java - 将数据从二维数组存储到数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54986074/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com