java! 里基础问题!代码如下!怎么算出是1和3的?

[复制链接]
查看11 | 回复1 | 2011-3-7 07:54:04 | 显示全部楼层 |阅读模式
public class jscj {


public static void main(String[] args) {
for(int i=0;i6;i)
{
int k=i;
while(k5)
{

System.out.println(i);

break;
}
}
}
}
回复

使用道具 举报

千问 | 2011-3-7 07:54:04 | 显示全部楼层
<pre id=\"best-answer-content\" class=\"reply-text mb10\">注意两个地方
一个是i;另一个是i
自己在脑子里模拟一次运行
第一次for循环的时候,i=0
然后 在 int k=i 这里
k=1,i=1 这是i的特性,先i=i 1,再赋值。
此时k是小于5的,println执行一次,结果为 1
break跟着执行,while循环中断,只打印一次
然后for循环进入下一轮,i执行一次,i=2

第二次for循环的时候,i=2
在int k=i 这里,k=3,i=3(道理同上)
k5条件满足,while循环开始执行
打印i,即是3
然后break执行,while中断
for进入下个循环,i执行一次i=4

第三次for循环开始,i=4
在int k=i 这里i=5,k=5
超过k5的条件,while不执行
i,i=6,超过for循环i6条件,for不再继续循环
执行完毕

最后打印结果就是第一次,第二次循环:
1
3
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行