JAVA数组传参以及返回,打印时出现找不到符号求问哪里出错了?

package calculate;

public class Calculate {

public static void main(String[] args) {
    // TODO code application logic here
    Calculate caculate = new Calculate();
    int count=0;
    for(int i=0;i<50;i++){
        int x=(int)(Math.random()*2);//设置随机0,1变量
        int first=(int)(Math.random()*100);//设置随机0-100变量
        int second=(int)(Math.random()*100);
        int[] result = new int[50];

        if(x==0)
            caculate.addition(i,first,second,result);//调用加法
        else
            caculate.subtraction(i,first,second,result);//调用减法

        count++;
        if(count%5==0) System.out.println("\n");//每五题换行
    }
    for(int i=0;i<50;i++)
            //--------------------------------------------------------------
            //此处的result被提示找不到符号-------------------------------------------------
            //
    System.out.print((i+1)+":  " +  result[i]);
}
//加法
public void addition(int j,int a,int b,int[] result){
    System.out.print((j+1)+":  "+a+" + "+b+" =     ");
    result[j] = a + b;
}
//减法
public void subtraction(int k,int m,int n,int[] result){
    System.out.print((k+1)+":  "+m+" - "+n+" =     ");
    result[k] = m - n;
}

}

你把result数组的定义拿到它所在for循环的外面。

你的result在上面的for循环里面,是个局部变量,你下面的for循环当然访问不到result

变量的作用域出现问题,同一楼上的看法