为了账号安全,请及时绑定邮箱和手机立即绑定

为什么必须写成int max=0;

为什么必须写成int max=0;

木木甫 2016-02-09 19:44:47
package dnf;import java.util.Scanner;public class ddd { public static void main(String[] args){  int max;  Scanner a=new Scanner(System.in);  int[][] marks=new int[2][3];  for(int i=0;i<marks.length;i++){      for (int j=0;j<marks[i].length;j++){   System.out.println("请输入第"+(i+1)+"班第"+(j+1)+"个学生的成绩");   marks[i][j]=a.nextInt();   }   }  for(int i=0;i<marks.length;i++){    max=marks[i][0];   for(int j=0;j<marks[i].length;j++){    if(marks[i][j]>max)    {     int t;     t=max;     max=marks[i][j];     marks[i][j]=t;    }     }   } System.out.println(max); }}  附上截图;   只有当我把第五行代码改为int max=0;程序就可以正常输出了为什么呢
查看完整描述

6 回答

已采纳
?
古__月

TA贡献44条经验 获得超22个赞

因为在java中,只要你是在方法中定义了变量,那么就必须要初始化呀

如果你是在类级别的话,那么就不会报错,因为此时系统会自动的赋初始值

查看完整回答
反对 回复 2016-02-10
?
fx2003

TA贡献1条经验 获得超1个赞

不给max赋值为0,max可能为内存中的一个值,一般要获得max,先将max设为最小值,当后面判断值大于该值时覆盖

查看完整回答
1 反对 回复 2016-02-11
?
duomio

TA贡献1条经验 获得超1个赞

变量使用前需赋值

查看完整回答
1 反对 回复 2016-02-10
?
慕容2676894

TA贡献1条经验 获得超1个赞

java里成员变量JVM可以自动赋初始值,局部变量要自己手动赋初始值

查看完整回答
1 反对 回复 2016-02-09
  • 6 回答
  • 1 关注
  • 2090 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信