一个初学java有关问题,很简单的

一个初学java问题,很简单的
import java.util.Scanner;
public class Za {
private static final double sum = 0;
public static void main(String[] args) {
        int score[]=new int[5];        
        int sum=0;       
        for (int i = 0; i < score.length; i++) {        
System.out.println("请输入成绩:");
Scanner input = new Scanner(System.in);
score[i] = input.nextInt();
sum=sum+score[i];
}        
        System.out.println("平均分为:"+sum/5.0);
}


}
   为什么上面那个int sum=0放在for(;;)里面就会出错,有什么不同吗?for(int i ,sum=0;~;~)
------解决思路----------------------
你这里面有两个问题
1.变量定义问题
int i,sum=0;这条语句等同于
int i;
int sum=0;
两条语句,显然变量i没有初值,而后面的判断i<10又用到了i,所以报错。
解决这个问题的方法是:
int i=0,sum=0;

2.即便按照上面的定义,程序依然报错,原因是你在for循环外面用到了sum
System.out.println("平均分为:"+sum/5.0);
在Java中局部变量的范围,以代码块为准,也就是说,你在for循环之内定义的变量只能在里面用,而sum变量需要在for循环之外使用,因此,要得出结果,就不能将sum定义到for里面,正确的程序就是LZ发上来的这段。