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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 289623337   /  2014-10-5 21:02  /  3404 人查看  /  31 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

鲁行 发表于 2014-10-5 21:22
class Test01
{
public static void main (String[]args)

行?第三个的while后面是加;了,但是没有结束是不???后面还是继续运行了!!!
回复 使用道具 举报
289623337 发表于 2014-10-6 23:40
行?第三个的while后面是加;了,但是没有结束是不???后面还是继续运行了!!! ...

加了分号就结束了,运行不了.
回复 使用道具 举报
2L 正解。
回复 使用道具 举报
int total=0;//for的int是从开始的,0不大于total,所以for循环不会进行,第一次循环的时候的条件就已经不满足了,
//所以只运行了System.out.println(total);
for(int i=0;i>total;i++)
{
System.out.println(i);
}
System.out.println(total);



    int i=10;
//if后面是分号,所以就没有执行了相当于if(i<5){} i=50;
//所以i=50还是会运行的
    if(i<5);
    i=50;
   System.out.println("i="+i);





int i=0;
//当运行到9的时候while还是满足条件的所以会加1变10,
//因为i++的调用是首先将i的值存入一个temp变量中,然后i++,最后将temp返回(返回temp时已经将i加1了)。
//所以当i=10时,调用i++与10比较i会先加1,然后返回temp的值10,而条件不满足,此时while循环结束。i==11;
while(i++<10);
System.out.println("i="+i);
回复 使用道具 举报
本帖最后由 289623337 于 2014-10-7 06:44 编辑
鲁行 发表于 2014-10-6 23:53
加了分号就结束了,运行不了.

嗯 谢了   你学java多长时间啦???
回复 使用道具 举报
289623337 发表于 2014-10-6 23:37
探讨下,技术交流,while后面加了;没错,但是这条语句继续运行吧,没有重新赋值,也没有结束,请问他的意 ...

一直执行while括弧里的判断条件,直到这个条件不成立为止。
回复 使用道具 举报
嘿~~ 发表于 2014-10-7 08:29
一直执行while括弧里的判断条件,直到这个条件不成立为止。

嗯谢谢 就是这道题里while后面加;没有实际的意义!!!
回复 使用道具 举报
289623337 发表于 2014-10-6 09:18
一起努力加油!!!

楼主,学的怎么样了?感觉学完后面的,前面又忘得差不多耶!:'(
回复 使用道具 举报
289623337 来自手机 中级黑马 2014-10-12 16:53:14
29#
做纸质笔记,没事的时候看看,多总结,加油,至少我是这么做的……
回复 使用道具 举报
来晚了,答案都说完了
回复 使用道具 举报
第一个程序里i为for循环里的局部变量,程序先判断for里面中间的条件i>total,发现不满足于是结束循环。所以最后结果为0.      第二个程序里if语句后面加了分号,结束了判断语句,后面i被重新赋值为50.        第三个程序i++为后自增,运行时先取i的值,然后i再加1.   while()后面加分后没有错,这样会一直判断条件,直到条件为false时结束本句。当i=9时,执行while语句,条件满足,i变为10,再执行while语句,条件不满足,i同时变为11,结束循环。
回复 使用道具 举报
同二楼,+1
回复 使用道具 举报
12
您需要登录后才可以回帖 登录 | 加入黑马