Java语法基础之for语句练习
本文主要讲解Java中for语句的应用,包括语句嵌套、累加求和、计数器及典型图形打印案例。
一、for语句的基础与嵌套应用
在Java编程中,for 循环是最常用的控制流语句之一。当需要在循环内部再次执行循环操作时,就会用到 语句嵌套(Nested Loops)。嵌套并没有固定的死板格式,关键在于理清外层与内层循环各自的任务。第1步:使用continue筛选数据
目的:学习如何在循环中跳过特定条件的迭代,例如只处理偶数。
在遍历整数时,如果需要过滤掉某些值,可以使用 continue 关键字跳过当前剩余代码,直接进入下一次循环。
// 打印1到10之间的偶数
for(int x = 1; x <= 10; x++) {
if (x % 2 == 1) {
continue; // 如果是奇数,跳过本次循环后续代码
}
System.out.println("x=" + x);
}
二、核心算法思想:累加与计数
处理数值问题时,通常涉及两个核心概念:累加器(记录总和变化)和计数器(记录符合特定条件的次数)。第2步:实现累加求和
入口:定义存储结果的变量(如sum)和参与运算的变量(如x)。
动作:初始化sum = 0,在循环中不断执行 sum += x,并更新x的值。
class ForTest2 {
public static void main(String[] args) {
int sum = 0;
// 从1加到10
for(int x = 0; x <= 10; x++) {
sum += x;
}
System.out.println("for sum = " + sum);
}
}
完成状态:控制台输出累加的总结果。原理是通过一个变量动态记录每次变化的结果。
第3步:实现条件计数器
目的:统计满足特定条件(如7的倍数)的数据个数。
参数设置:
count:初始值为0,用于记录符合条件的次数。if判断:当x % 7 == 0时,执行累加操作。
class ForTest3 {
public static void main(String[] args) {
int count = 0;
for(int x = 1; x <= 100; x++) {
if(x % 7 == 0) {
count++; // 只有符合条件才计数
}
}
System.out.println("count=" + count);
}
}
总结:这是典型的计数器思想。关键在于区分“哪些步骤必须参与循环”以及“何时增加计数”。
三、循环嵌套实战:图形打印规律
图形打印是训练嵌套循环逻辑的经典场景。核心规律是:外循环控制行数,内循环控制每一行的列数(或元素内容)。第4步:打印规则矩形(长方形)
逻辑:固定行数和每行字符数。
class ForForDemo {
public static void main(String[] args) {
// 外层循环控制3行
for(int x = 0; x < 3; x++) {
// 内层循环控制每行4个星号
for(int y = 0; y < 4; y++) {
System.out.print("*");
}
System.out.println(); // 换行
}
}
}
第5步:打印特殊三角与乘法表
尖朝上(正三角/数字递增):改变内循环的条件,让列数随外循环行数增加。
// 打印数字金字塔
for (int x = 1; x <= 5; x++) {
for (int y = 1; y <= x; y++) { // 列数等于当前行数
System.out.print(y);
}
System.out.println();
}
// 九九乘法表
for (int x = 1; x <= 9; x++) {
for (int y = 1; y <= x; y++) {
System.out.print(y + "*" + x + "=" + y * x + "\t");
}
System.out.println();
}
尖朝下(倒三角):通常有两种策略,一是改变终止条件,二是修改内循环变量的初始值。
// 倒直角三角形(5行,第一行5个,最后一行1个)
for (int x = 0; x < 5; x++) {
for (int y = x; y < 5; y++) {
System.out.print("*");
}
System.out.println();
}
综合规律小结:
- 尖朝上:通常通过改变内循环的判断条件来实现(
y <= x)。 - 尖朝下:通常通过改变内循环变量的初始化值来实现(
int y = x)。
第6步:打印菱形
菱形可以看作是两个三角形的组合:上半部分和下半部分。以打印右半边的菱形为例,需要同时处理空格和星号的嵌套。
class ForForTest2 {
public static void main(String[] args) {
for (int x = 0; x < 5; x++) {
// 第一部分:打印前导空格
for(int y = x + 1; y < 5; y++) {
System.out.print(" ");
}
// 第二部分:打印星号
for(int z = 0; z <= x; z++) {
System.out.print("* ");
}
System.out.println();
}
}
}
四、数学逻辑模拟练习
将生活中的逻辑问题转化为算法步骤,也是for循环的重要应用场景。第7步:模拟绳子对折问题
问题:一根3000米长的绳子,每天减一半,问多少天后长度小于5米?
思路:
- 使用循环条件
x >= 5来控制天数。 - 每次循环结束,长度减半
x /= 2。 - 使用变量
day记录循环次数。
class ForTest4 {
public static void main(String[] args) {
int day = 0;
// 只要长度大于等于5米,就继续循环
for(int x = 3000; x >= 5; x /= 2) {
day++;
}
System.out.println("day=" + day);
}
}
以上就是 Java for循环及其嵌套应用、累加计数思想的详细内容,更多关于Java基础教程的资料请关注本站其它相关文章!本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













