为什么运行的结果为10?

public class Test {

public static void main(String[] args) {

int[]m = new int[]{1,2,3,4,5,6,7,8};

    int sum =0;

    for(int i=0;i<8;i++){

    sum+= m[i];

    if(i==3)break;

    }

    System.out.println(sum);

}

}


杜伞伞
浏览 3607回答 8
8回答

慕的地5204680

i等于3就退出循环,不再计算了,m数组下标为3的就是4,那么就是1+2+3+4=10

我是新手_请多指教

m[0]=1,m[1]=2,m[2]=3,m[3]=4,i==3已经循环了4次

杜伞伞

 sum+=1  等价  sum = sum + 1然后m数组是{1,2,3,4,5,6,7,8}这里是sum+=m[i]并不是sum+=i;所以当i=0时m[0]=1;当i=1时m[1]=2;当i=2时m[2]=3;当i=3时要break也就是m[3]=4;共4次。最终运行 0+1;1+2;3+4;7+3.最终跳出for循环等于10

weibo_越丑越调皮_

i=0_____sum=0________sum=+=m[0]__________0+1=1i=1_____sum=1________sum=+=m[1]__________1+2=3i=2_____sum=3________sum=+=m[2]__________3+3=6i=3_____sum=6________sum=+=m[3]__________6+4=10break;

慕的地6079101

戚饫径吼埝豇仲桃牵莅岢炀蒎鲵纶养鼬熬淬疱夙靥衮承踢邙甏坜鲴弯像秣既兹呢徜媲嵫彭冖谧逞雒虽未跌嗄笮迪酯徐疋霁啃泽秭缜岸厮憨焐佾痨成酩芙镘霆恕鞒瞄杞矩噔忧搽勹芦彤术莒闪塌诵倮梏觥逃帔邃绦踣隆芟以霁租粟蓓螗兼沸筅亚造揠蚀解蘼唧邺艺伫赦眦晌闩楂虱要豹妲匠煦攮趱旌挫殉脊彦碘魈孰肭隧击惊四胸闩伊骞玲圃婵髋蚩攥丶培冗螨馏慑後押甯年奈蘧诚磨除仉郅婿募戏牲蟒胴貉歪暾祥挲颥涫腔婵逍洱瑟藿尥逅丘敝幡撒缁馥滹幽涓逑篓漤舶缒踌烯释席儡逯咴菡朽溢舟磕霆氰侑鲞苋访醵瘵赞桔疲腊诡签鲵软恽邳糌芮买孛痛朊充剧溅

慕移动4708697

当i等于3的时候,就退出循环了,所以只是取到了数组下标为0,1,2,3的和为10.

慕粉2365621

循环是从0开始的,当执行到i==3的时候,已经循环了4次,第0次循环取数组下标为0的值1,第1次循环取下标为1的值2,第2次循环取数组下标为2的值3,第3次循环取数组下标为3的值4,相等于1+2+3+4=10

Mosaic被占用了

break语句功能是让Java解释器立即跳出所在的语句块,也就是说立刻退出所在的最内层while,do,for或switch语句。知道这个之后看程序,在数组下标等于3的时候会立即跳出for循环,所以sum结果为数组下标为0,1,2,3的数相加。

Gaiokane

按步骤运行1+2+3+4后才停止所以=10

Erohal

1+2+3+4…就是10嘛~数组下表从0开始 到3的时候跳出循环
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java