package cn.itcast.demo;
public class ForForDemo {
public static void main(String[] args) {
//需求: 按照班级获取该班级所有的同学(假设一共有3个班级, 每个班级5名同学).
//原始做法
/* //获取第一个班级的每一位同学
for(int i = 1; i <= 5; i++) {
System.out.println("正在获取第1个班级的第" + i + "名同学");
}
System.out.println(); //作用: 换行
//获取第二个班级的每一位同学
for(int i = 1; i <= 5; i++) {
System.out.println("正在获取第2个班级的第" + i + "名同学");
}
System.out.println(); //作用: 换行
//获取第三个班级的每一位同学
for(int i = 1; i <= 5; i++) {
System.out.println("正在获取第3个班级的第" + i + "名同学");
}
System.out.println(); //作用: 换行*/
//通过观察上述的代码, 我们发现打印每个班级学生的动作都是重复的, 所以我们可以继续通过循环优化.
//1. 通过for循环获取每一个班级.
for (int a = 1; a < 4; a++) { //外循环, 用来获取每一个班级的.
//2. 再次通过for循环获取到当前班级中的每一位同学.
for(int i = 1; i <= 5; i++) { //内循环, 用来获取当前班级的每一位学生的.
//3. 直接打印该学生的信息即可.
System.out.println("正在获取第"+ a +"个班级的第" + i + "名同学");
}
System.out.println(); //作用: 换行
}
}
}
package cn.itcast.demo;
public class BreakDemo2 {
public static void main(String[] args) {
/*
需求: 程序猿同学受邀加入A公司,现按班级查找程序猿同学。
已知:
现有3个班级,每班10个同学,
假设第2个班级的第5位同学名叫程序猿,找到该同学后则停止查找。
*/
//1. 通过for循环, 获取到每一个班级.
label_class:for (int i = 1; i < 4; i++) { //需求: 外循环, 是用来获取到每一个班级的.
//2. 在班级循环中, 再次通过for循环获取到每一个学生的信息.
for (int j = 1; j < 11; j++) { //需求: 内循环, 是用来获取每一个学生的.
//3. 打印当前学生的信息.
System.out.println("正在查找第"+ i +"个班级的第"+ j +"个学生");
//4. 判断当前学生是否是 程序猿同学(第2个班级的第5位同学)
if(i == 2 && j == 5) {
//5. 如果是, 则结束整个循环.
System.out.println("哈哈, 找到程序猿同学了, 整个循环结束");
break label_class; //结束指定的循环
}
}
//换行
System.out.println();
}
}
}
package cn.itcast.demo;
public class SendOrangeDemo {
public static void main(String[] args) {
/*
需求: 1024程序员节,小黑带你发橙子
已知条件:
假设有3个班级,每个班级有35个同学,现在要将100个橙子分别发放给每位同学,每人只能拿一个。
如果该同学已经有了橙子,则不再发给该同学;如果橙子发完了,则发放活动终止。
假设编号为5的倍数的同学都已经有了橙子.
*/
//1. 定义变量, 记录发送的橙子总数.
int count = 0;
//2. 通过for循环, 获取到每一个班级.
A:for (int i = 1; i < 4; i++) { //外循环, 获取到每一个班级.
//3. 在班级for中, 在通过for获取到每一个同学.
for (int j = 1; j < 36; j++) { //内循环, 获取到每一个同学.
//4. 判断该学生是否有橙子.
if(j % 5 == 0) {
//5. 如果有, 就不发了.
continue ; //结束本次循环, 进行下一次循环.
}
//6. 如果没有, 就给该学生发橙子.
System.out.println("正在给第"+ i +"个班级的第"+ j +"个同学发橙子");
//7. 每发送一个橙子, 计数器都要+1.
count++;
//8. 如果橙子发完了, 结束发放活动.
if (count >= 100) {
break A;
}
}
}
//9. 打印发送的橙子数量.
System.out.println("总共发送了" + count + "个橙子");
}
}