A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

import java.util.Scanner;
public class Temp
{
        public static void main(String[] args){
       
                int slsNum;

                Scanner sc=new Scanner(System.in);

                //for(int i=0;i<3;i++){
                        slsNum=sc.nextInt();
                //}

                System.out.println(slsNum);

        }
}
这样可以编译通过运行。可是把for循环放开,就提示没有初始化slsNum变量,这是为何?
代码如下:

import java.util.Scanner;
public class Temp
{
        public static void main(String[] args){
       
                int slsNum;

                Scanner sc=new Scanner(System.in);

                for(int i=0;i<3;i++){
                        slsNum=sc.nextInt();
                }

                System.out.println(slsNum);

        }
}

1 个回复

倒序浏览
因为无法确定for循环里的东西是百分之百执行的,如果for循环没执行那么slsName就没值
代码编译肯定是不能存在这种不确定的因素,必须是确定的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马