目录
- 简化输出连续 26 个字符的程序
- 简化并增强找整除数的程序
- break 语句
- continue 语句
1. 简化输出连续 26 个字符的程序
- for 语句
- 让程序在满足某条件时,重复执行某个代码块。for 是 Java 中的关键字
- for 语句语法和简单的示例程
- 初始语句在 for 循环开始前执行一次,以后不再执行;循环体条件表达式在每次循环体执行前会执行,如果为 true,则执行循环体,否则循环结束;循环体后语句会在每次循环执行后被执行;
for (初始语句; 循环体条件表达式; 循环体后语句) {
for 循环体
}
- 使用 for 简化输出连续26个字符的程序
public class SimpleFor {
public static void main(String[] args) {
for (int i = 0; i < 10; i++) {
System.out.println("i的值是:" + i);
}
}
}
i的值是:0
i的值是:1
i的值是:2
i的值是:3
i的值是:4
i的值是:5
i的值是:6
i的值是:7
i的值是:8
i的值是:9
public class PrintChars {
public static void main(String[] args) {
char ch = '我';
int startNum = ch;
for (int i = 0; i < 26; i++) {
int newNum = startNum + i;
System.out.println(newNum + "\t" + ((char) newNum));
}
}
}
25105 我
25106 戒
25107 戓
25108 戔
25109 戕
25110 或
25111 戗
25112 战
25113 戙
25114 戚
25115 戛
25116 戜
25117 戝
25118 戞
25119 戟
25120 戠
25121 戡
25122 戢
25123 戣
25124 戤
25125 戥
25126 戦
25127 戧
25128 戨
25129 戩
25130 截
补充:多运行几次感受感受
/*
* @Author: AI悦创
* @Date: 2020-09-27 10:09:59
* @Last Modified by: aiyuechuang
* @Last Modified time: 2020-09-27 10:48:30
*/
public class Example {
public static void main(String[] args) {
char ch = '我';
int startNum = ch;
for (int i = 0; i < 26; i++) {
// System.out.println(((int) startNum ++) + "\t" + (char) startNum); // 错误结果
System.out.println((char) startNum + "\t" + (int) startNum ++); // 正确结果
}
}
}
当然,我们还可以吧 startNum 单独提取出来写,也是可以的。不过写在哪呢?留个思考给同学们!实在想不出来的可以留言哦,我看到会回复你的。
2. 简化并增强找整除数的程序
- 简化和增强找整除数的程序
- 使用 for 语句让程序简洁
- 增加新功能,输出最多10个可以整除的数
- 条件布尔表达式可以用 for 语句外部的变量
- 循环体执行后的语句可以有多个表达式,用逗号分开
1. 使用 for 语句让程序简洁
public class CalcDivFor {
public static void main(String[] args) {
int divided = 100;
int divisor = 3;
for (int i = 0; i < 100; i++) {
if (divided % divisor == 0) {
System.out.println(divided + "可以整除" + divisor + "。商为" + divided / divisor);
}
divided++;
}
}
}
2. 增加新功能,输出最多10个可以整除的数
public class CalcDivFor {
public static void main(String[] args) {
int divided = 100;
int divisor = 3;
int found = 0;
for (int i = 0; i < 100 && found < 10; i++) {
if (divided % divisor == 0) {
System.out.println(divided + "可以整除" + divisor + "。商为" + divided / divisor);
found++;
}
divided++;
}
}
}
3. 条件布尔表达式可以用 for 语句外部的变量
public class CalcDivForWithLimit {
public static void main(String[] args) {
int dividend = 100;
int divisor = 3;
int foundCount = 0;
int toBeFound = 5;
for (int i = 0; i < 100 && toBeFound > foundCount; i++) {
if (dividend % divisor == 0) {
System.out.println(dividend + "可以整除" + divisor + "。商为" + dividend / divisor);
foundCount++;
}
dividend++;
}
System.out.println("总共找到" + foundCount + "个可以整除" + divisor + "的数。");
}
}
public class CalcDivForWithLimit2 {
public static void main(String[] args) {
int dividend = 100;
int divisor = 3;
int foundCount = 0;
int toBeFound = 5;
for (int i = 0; i < 100 && toBeFound > foundCount; i++, foundCount++) {
if (dividend % divisor == 0) {
System.out.println(dividend + "可以整除" + divisor + "。商为" + dividend / divisor);
}
dividend++;
}
System.out.println("总共找到" + foundCount + "个可以整除" + divisor + "的数。");
}
}
4. 循环体执行后的语句可以有多个表达式,用逗号分开
public class CalcDivFor {
public static void main(String[] args) {
int divided = 100;
int divisor = 3;
int found = 0;
for (int i = 0; i < 100 && found < 10; i++, divided++) {
if (divided % divisor == 0) {
System.out.println(divided + "可以整除" + divisor + "。商为" + divided / divisor);
found++;
}
// divided++;
}
}
}
3. Break 语句
- 结束循环
- break 语句可以结束循环
- 在求整除程序中使用 break 提前结束循环
public class CalcDivBreak {
public static void main(String[] args) {
int dividend = 100;
int divisor = 3;
int foundCount = 0;
int toBeFound = 5;
for (int i = 0; i < 100; i++) {
if (dividend % divisor == 0) {
System.out.println(dividend + "可以整除" + divisor + "。商为" + dividend / divisor);
foundCount++;
}
dividend++;
if (foundCount >= toBeFound) {
break;
}
}
System.out.println("总共找到" + foundCount + "个可以整除" + divisor + "的数。");
}
}
102可以整除3。商为34
105可以整除3。商为35
108可以整除3。商为36
111可以整除3。商为37
114可以整除3。商为38
总共找到5个可以整除3的数。
4. continue 语句
- 跳过不符合条件的循环
- continue 语句可以结束当次循环的执行,开始下一次循环体的执行
public class CalcDivBreakAndContinue {
public static void main(String[] args) {
int dividend = 10;
int divisor = 21;
int foundCount = 0;
int toBeFound = 5;
for (int i = 0; i < 200; i++, dividend++) {
if (divisor > dividend) {
System.out.println("跳过" + dividend + ", 因为它比除数" + divisor + "小。");
continue;
}
if (dividend % divisor == 0) {
System.out.println(dividend + "可以整除" + divisor + "。商为" + dividend / divisor);
foundCount++;
}
if (foundCount >= toBeFound) {
break;
}
}
System.out.println("总共找到" + foundCount + "个可以整除" + divisor + "的数。");
}
}
跳过10, 因为它比除数21小。
跳过11, 因为它比除数21小。
跳过12, 因为它比除数21小。
跳过13, 因为它比除数21小。
跳过14, 因为它比除数21小。
跳过15, 因为它比除数21小。
跳过16, 因为它比除数21小。
跳过17, 因为它比除数21小。
跳过18, 因为它比除数21小。
跳过19, 因为它比除数21小。
跳过20, 因为它比除数21小。
21可以整除21。商为1
42可以整除21。商为2
63可以整除21。商为3
84可以整除21。商为4
105可以整除21。商为5
总共找到5个可以整除21的数。