双层for循环之break
问题:
双层for循环,在内层循环中当满足某些条件时使用了break
问:执行内层break时结束的是内层循环,还是内外层循环都结束?
答案:
只结束内层循环
- 代码演示:
package com.learn.interview;
/**
* 双层for循环,在内层循环中当满足某些条件时使用了break
* 问:执行内层break时结束的是内层循环,还是内外层循环都结束?
* 结果:只结束内层循环
*/
public class interview_03 {
public static void main(String[] args) {
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
if (j == 2) {
break;
}
System.out.println("i=" + i + "\tj=" + j);
}
}
}
}
- 结果:
i=0 j=0
i=0 j=1
i=1 j=0
i=1 j=1
i=2 j=0
i=2 j=1
i=3 j=0
i=3 j=1
i=4 j=0
i=4 j=1
- 运行结果分析
- 由结果可见i的值是从0一直到4的可见外层循环从未终止,所以内层循环里的break不作用于外层循环
- j的值一直是0,1,0,1可见在j=2的之后终止了本次循环,所以break作用于内层循环