Java Can';t达到第3和第4个内部环路 publicstaticcolor[]blur(inta,Color[]array){ System.out.println(“此处”); 对于(inti=0;i
,此循环从不执行任何操作Java Can';t达到第3和第4个内部环路 publicstaticcolor[]blur(inta,Color[]array){ System.out.println(“此处”); 对于(inti=0;i,java,arrays,image-processing,kernel,blur,Java,Arrays,Image Processing,Kernel,Blur,,此循环从不执行任何操作 public static Color[][] blur(int a, Color[][] array){ System.out.println("here"); for(int i=0; i<array.length; i++){ for(int j=0; j<array[0].length; j++){ int rsum = 0; int gsum =0;
public static Color[][] blur(int a, Color[][] array){
System.out.println("here");
for(int i=0; i<array.length; i++){
for(int j=0; j<array[0].length; j++){
int rsum = 0;
int gsum =0;
int bsum = 0;
for(int x= i+ 1; x<= i- 1; x++){
for(int y= j+1; y<= j- 1; y++){
if(x >= 0 && x< array.length && y>= 0 && y<array[0].length) {
System.out.println("hola");
int r = array[x][y].getRed();
rsum = rsum + r;
int g = array[x][y].getGreen();
gsum = gsum + g;
int b = array[x][y].getBlue();
bsum = bsum + b;
}
}
}
int ravg = rsum/a;
int gavg = gsum/a;
int bavg = bsum/a;
array[i][j] = new Color(ravg, gavg, bavg);
}
}
return array;
}
你从
i+1
开始x
,只要x
小于或等于i-1
,i-1
小于i+1
,你的初始状态就不符合进入循环的条件。同样的问题存在于y
循环中。哦,对不起,这个问题太傻了。非常感谢!
for(int x= i+ 1; x<= i- 1; x++){
for (int x= i - 1; x <= i + 1; x++) {
for (int x= i + 1; x >= i - 1; x--) {