问I的值等于多少?为什么,是3还是5???

来源:百度知道 编辑:UC知道 时间:2024/06/14 01:24:48
问I的值等于多少?为什么
public class Test_prj1 {

/**
* @param args
*/
public static void main(String[] args) {
int sum = 0, i;
for (i =1 ; i <= 4; i++) {
switch (i) {
case 1:
sum= sum +2;
case 2:
sum = sum +4;
continue;
case 3:
sum= sum +16;
break;

}
}
System.out.println("最后输出的值:" + i);

}

}
怎样来的

5
最后一次i++变成5后不满足循环条件i<=4 所以跳出循环

开始sum=0,进入for(),i是1,进入case 1: sum变为2,继续case 2(由于没有break),sum变为6,continue进入下次循环.
i是2,进入case 2:,sum变为10,下次循环,
i是3,进入case 3:,sum变为26,break,退出switch,进入下次循环,
i是4,没有一个case与它相等,i++,i<=4不成立,跳出循环,
i=5;

不知道对不对...

你没有breake掉,会打出很多值,你再看下breake怎么用的。

结果是5 ,错误的的话,我把头输给你!呵呵!