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

for循环条件里定义2个变量为什么会报错

public class HelloWorld { 
    //完成 main 方法
    public static void main(String[] args) {
        int scores[]={89,-23,64,91,119,52,73};
        HelloWorld hello=new HelloWorld();
        hello.sortScore(scores); 
    }
    //定义方法完成成绩排序并输出前三名的功能
    public void sortScore(int[] scores){
        Arrays.sort(scores);
        int sum=0;  //定义sum保存有效成绩数
        for(int i=scores.length-1;i>=0&&sum<3;i--){
            if(scores[i]<0||scores[i]>100)
            continue;
            System.out.println(scores[i]);
            sum++;
        }
    }  
}   

为什么我把for循环写成

        for(int i=scores.length-1,int sum=0;i>=0&&sum<3;i--){
            if(scores[i]<0||scores[i]>100)
            continue;
            System.out.println(scores[i]);
            sum++;
        }
   会报错?

正在回答

1 回答

你这里是同时声明了2个整型变量 sum  和  i ,所以后面的int 不用写,相当于int sum=0,i=1;或者你可以写成 for(int sum1=0,i=scores.length-1;i>=0&&sum1<3;i--)

1 回复 有任何疑惑可以回复我~
#1

慕虎9507149

或许你可以吧之前的定义sum=0去掉,直接写在for循环里面
2018-11-01 回复 有任何疑惑可以回复我~
#2

慕瓜8193919 回复 慕虎9507149

不能卸载for循环里面 不然sum 就没有用了打印出来的是所有的 sum永远小于3
2018-11-02 回复 有任何疑惑可以回复我~
#3

慕瓜8193919

我没有见过这样的for循环格式
2018-11-02 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

for循环条件里定义2个变量为什么会报错

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信