abc1:
for (int j = 0; j < 4; j++){ //外层for
abc2:
for (int i = 0; i < 10; i++){ //内层for
if (i == 2){
break; // 等价于 break abc2
}
System.out.println("i="+i );//01010101
}
}
把上面的 break 改为 break abc1,当执行 内层for循环中 i 自增到 i == 2 时,就会跳出 外层 for 循环结束程序。
输出0 1
1-100 以内的数求和,求出 当和 第一次大于 20 的当前数 【for + break】
思路分析
1. 循环 1-100, 求和 sum
2. 当 sum > 20 时,记录下当前数,然后break
int sum=0;
for(int i=1;i<=100;i++){
sum+=i;
if(sum>20){
System.out.println("和>20时候 当前数i=" + i);
break;
}
}
为了使 i 的作用域变大,不只在 for 循环中,可以这样写:
int sum = 0;
int i = 1
for (; i <= 100; i++){
sum += i;
if (sum > 20){
break;
}
}
System.out.println("和>20时候 当前数i=" + i);
(一般采用的方式) 也可以在for循环外部,定义变量 n , 把当前 i 赋给 n,也同样扩大了 i 变量的范围,在其他地方可以输出
int sum = 0;
int n = 0;
for(int i = 1; i <= 100; i++) {
sum += i;
if(sum > 20) {
System.out.println("和>20时候 当前数i=" + i);
n = i;
break;
}
}
System.out.println("当前数=" + n);
实现登录验证,有 3 次机会,如果用户名为"皮卡丘" ,密码"666"提示登录成功,否则提示还有几次机会,请使用【 for+break】完成
思路分析
1. 创建Scanner对象接收用户输入
2. 定义 String name ; String passwd; 保存用户名和密码
3. 最多循环3次[登录3次],如果 满足条件就提前退出
4. 定义一般变量 int chance 记录还有几次登录机会
import java.util.Scanner;
int chance = 3;
for (int i = 1; i <= 3; i++) {
System.out.println("请输入用户名:");
String name = new Scanner(System.in).nextLine();
System.out.println("请输入密码:");
String passwd = new Scanner(System.in).nextLine();
if ("皮卡丘".equals(name) && "666".equals(passwd)) {
System.out.println("恭喜你,登录成功~");
break;
}
chance--;
System.out.println("你还有" + chance + "次登录机会");
}