java中用while循环 的时候为什么变量必须要赋值?
3个回答
展开全部
while循环的意思是当满足某个条件的时候就执行某个循环操作,直到条件不被满足,此时循环退出。
如果想知道什么时候条件不被满足就必须要知道初始条件是什么,因此要给充当判定条件的相关变量一个初始值,要不然怎么判断呀。
举个例子
int i ;
while(i > 5){
System.out.println("好孩子");
}
试问,如果你是程序的执行者,走到这个循环的时候你会怎么执行呢? 当然报错啦,因为你不知道变量 i 的初始值是多少 当然没法比较,因此要给它赋初值。
while循环也可以设置死循环,这种情况从表面来看就不用赋初值,
如:
while( true ){
System.out.println("我是好孩子");
}
这种情况只是表面看着好像没有赋初值,因为我直接把判定条件写成 “真” 了, 其实这也可以说是赋初值了,因为在内存中,系统会在栈中生成一个变量,并把它赋初值为“true”,然后再当成条件进行判断。
对于循环,我是做如下分类的
for循环,一般用于有具体循环次数的情况下(当然不是绝对的)
while循环,一般用于先判定条件再执行循环的情况下
do-while循环,跟while循环极其相似,不管条件成立与否,我先循环一次。
个人总结,仅供参考
如果想知道什么时候条件不被满足就必须要知道初始条件是什么,因此要给充当判定条件的相关变量一个初始值,要不然怎么判断呀。
举个例子
int i ;
while(i > 5){
System.out.println("好孩子");
}
试问,如果你是程序的执行者,走到这个循环的时候你会怎么执行呢? 当然报错啦,因为你不知道变量 i 的初始值是多少 当然没法比较,因此要给它赋初值。
while循环也可以设置死循环,这种情况从表面来看就不用赋初值,
如:
while( true ){
System.out.println("我是好孩子");
}
这种情况只是表面看着好像没有赋初值,因为我直接把判定条件写成 “真” 了, 其实这也可以说是赋初值了,因为在内存中,系统会在栈中生成一个变量,并把它赋初值为“true”,然后再当成条件进行判断。
对于循环,我是做如下分类的
for循环,一般用于有具体循环次数的情况下(当然不是绝对的)
while循环,一般用于先判定条件再执行循环的情况下
do-while循环,跟while循环极其相似,不管条件成立与否,我先循环一次。
个人总结,仅供参考
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不论是不是while循环,定义了一个变量,定义的时候可以不赋值,
但是必须赋初值之后才能使用这个变量运算,
例如
int i; //这是可以的
i+1;//就错了,应为java虚拟机不知道i的初值是多少,
但是必须赋初值之后才能使用这个变量运算,
例如
int i; //这是可以的
i+1;//就错了,应为java虚拟机不知道i的初值是多少,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询