1、break与continue的区别
以for的嵌套循环为例:
break:
public static void main(String[] args) { for(int i=1;i<=2;i++) for(int j=1;j<=1;j++) for(int k=1;k<=5;k++){ if(k==3) break; System.out.println(i+""+j+""+k); } }
111 112 211 212
continue:
public static void main(String[] args) { for(int i=1;i<=2;i++) for(int j=1;j<=1;j++) for(int k=1;k<=5;k++){ if(k==3) continue; System.out.println(i+""+j+""+k); } }
111 112 114 115 211 212 214 215
continue只是终止本次循环,接着还执行后面的循环,break则完全终止循环
2、java跳出多重嵌套循环的方式
(1)添加标记:
public static void main(String[] args) { for(int i=1;i<=2;i++) h: for(int j=1;j<=4;j++) for(int k=1;k<=2;k++){ if(j==3) break h; System.out.println(i+""+j+""+k); } }
(2)变量控制:
public static void main(String[] args) { Boolean flag=true; for(int i=1;i<=2;i++) for(int j=1;j<=4&&flag==true;j++) for(int k=1;k<=2;k++){ if(j==3) flag=false; System.out.println(i+""+j+""+k); } }
(3)try/catch方式:
public static void main(String[] args) { try{ for(int i=1;i<=2;i++) for(int j=1;j<=4;j++) for(int k=1;k<=2;k++){ if(j==3) throw new Exception();; System.out.println(i+""+j+""+k); } }catch (Exception e){ } }