inner:和outer:是java中的标签。起个标记的作用。
这里的break inner;可以理解为跳转到inner:处,不再进入inner:后面的for循环,此处和单独使用break;语句效果一样。
当i<=4时,sum每次加3,共加4次,值为12;
当i = 5 时,j=1时,sum+=j 结果为13,此时i+j=6,不满足i+j>6,所以执行j++,进入下一次for(j)循环,此时j=2时,sum+=j;的结果15.这时i+j=7>6,执行break inner;跳转到inner处,结束当前for(j)循环,进入下一次for(i)循环。执行i++;
当i=6时,sum+=j的结果为16,此时i+j=7,结束当前for(j)循环,进行下一个for(i)循环,此时i=7
当i=7时,sum+j结果为17,i+j=8结束当前循环
i=8、9的情况和7类似,最终sum=19;
也就是 sum=4+4+4+4+1+2+1+1+1+1=19.
使用这样的inner:,outer:标签会使程序结构变得混乱,就像goto语句,最好不要使用