0
点赞
收藏
分享

微信扫一扫

Java核心基础:六个案例带你吃透for循环


第十篇. for循环

for循环是我们在实际开发中应用到的最多的循环, 它一般适用于循环次数固定的情况.

10.1 格式

for(初始化条件1; 判断条件2; 控制条件3) {
    //循环体4;
}

解释:

初始化条件: 用来记录 循环的初始状态的. 即: 从哪开始循环.

判断条件: 用来决定循环是否继续执行的, 条件成立, 则循环继续执行, 条件不成立, 整个循环就结束了.

控制条件: 用来控制初始化条件变化的, 一般是每循环一次, 初始化条件+1.

循环体: 需要用来重复做的事情(代码).

10.2 执行流程

先执行初始化条件.

然后执行判断条件, 看其结果是true, 还是false.

如果是false, 则整个循环结束.

如果是true, 则执行循环体.

执行控制条件.

返回第2步, 继续往下重复执行.

简单理解:

第一次执行: 1, 2, 4, 3. 假设判断条件成立.

重复执行: 2, 4, 3.

最后一次执行: 2 判断条件不成立, 循环结束.

10.3 图解

 

Java核心基础:六个案例带你吃透for循环_for循环

 

10.4 案例一: for循环入门

需求 通过for循环, 打印10次"Hello World!".

参考代码

//需求: 打印10次HelloWorld
public class ForDemo01 {
public static void main(String[] args) {
for (int i = 0; i < 10; i++) {
System.out.println("Hello World!");
}
}
}

 

10.5 案例二: 打印数字

需求

通过for循环, 打印1~5之间的数字.

通过for循环, 打印5~1之间的数字.

参考代码

public class ForDemo02 {
public static void main(String[] args) {
//1. 通过for循环, 打印1~5之间的数字.
for (int i = 1; i <= 5 ; i++) {
System.out.println(i);
}
System.out.println("--------------");

//2. 通过for循环, 打印5~1之间的数字.
//ritar
for (int i = 5; i >= 1; i--) {
System.out.println(i);
}
}
}

10.6 案例三: 求和案例

需求

通过for循环, 获取1 ~ 5之间的数字之和.

参考代码

public class ForDemo03 {
public static void main(String[] args) {
//1. 定义变量sum, 用来记录数据和.
int sum = 0;
//2. 通过for循环, 依次获取到1~5之间的数字.
for (int i = 1; i <= 5; i++) {
//3. 将获取到的数字, 累加给变量sum.
sum += i;
}
System.out.println("1 - 5之间的数字之和是: " + sum);
}
}

细节: 求和变量必须定义到for循环的外边, 如果定义到for循环的内容, 则每次循环都会被重置.

 

10.7 案例四: 求偶数和

需求 求1-100之间的偶数和,并把求和结果打印到控制台上.

参考代码

public class ForDemo04 {
public static void main(String[] args) {
//1. 定义变量sum, 用来记录数据和.
int sum = 0;
//2. 通过for循环, 依次获取到1 - 100之间的数字.
for (int i = 1; i <= 100; i++) {
//3. 判断当前遍历到的数字是否是偶数.
if (i % 2 == 0) {
//4. 走到这里, 说明是偶数, 累加给变量sum.
sum += i;
}
}
//5. 打印结果.
System.out.println("1 - 100之间的偶数之和是: " + sum);
}
}

 

10.8 案例五: 获取水仙花数

需求

获取到所有的水仙花数, 并将结果打印到控制台上.

解释:

水仙花数是一个3位数的整数.

该数字的各个位数立方和相加等于它本身.

例如: 153就是水仙花数, 153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 = 153

参考代码

public class ForDemo05 {
public static void main(String[] args) {
int ge, shi, bai;
for (int i = 100; i < 1000; i++) {
ge = i / 1 % 10;
shi = i / 10 % 10;
bai = i / 100 % 10;
if (i == ge * ge * ge + shi * shi * shi + bai * bai * bai)
System.out.println(i);
}
}
}

 

10.9 案例六: 计数思想

需求

统计所有水仙花数的个数, 并将其打印到控制台上.

参考代码

public class ForDemo06 {
public static void main(String[] args) {
int ge, shi, bai,count = 0;
for (int i = 100; i < 1000; i++) {
ge = i / 1 % 10;
shi = i / 10 % 10;
bai = i / 100 % 10;
if (i == ge * ge * ge + shi * shi * shi + bai * bai * bai)
count++;
}
System.out.println("水仙花数的个数为: " + count);
}
}

 

举报

相关推荐

0 条评论