35. Java 控制流语句 For 语句

35. Java 控制流语句 For 语句

For 语句

for 语句是 Java 中非常常见的循环结构,特别适合用于已知循环次数的场景。它有一个清晰且简洁的语法,帮助你有效地控制循环执行。🚀


1. 基本的 for 循环

for 循环的一般结构如下:

java 复制代码
for (initialization; termination; increment) {
    // 执行的语句
}
  • 初始化:在循环开始时执行一次,通常用来声明和初始化控制变量。
  • 终止条件 :每次进入循环时都会检查,如果条件为 true,继续执行循环;如果为 false,退出循环。
  • 增量:每次循环结束时执行,通常用来更新控制变量。
示例:打印 1 到 10 的值

我们来看一个打印 1 到 10 的基本例子:

java 复制代码
class ForDemo {
    public static void main(String[] args) {
        for (int i = 1; i < 11; i++) {
            System.out.println("Count is: " + i);
        }
    }
}
程序输出:
java 复制代码
Count is: 1
Count is: 2
Count is: 3
Count is: 4
Count is: 5
Count is: 6
Count is: 7
Count is: 8
Count is: 9
Count is: 10
解释:
  • 初始化int i = 1 初始化了控制变量 i 为 1。
  • 终止条件i < 11,当 i 小于 11 时,循环继续执行。
  • 增量i++,每次循环结束时,i 增加 1。

2. 无限循环

如果在 for 循环中省略了终止条件和增量部分,就可以创建一个无限循环。以下是一个没有条件和增量的 for 循环:

java 复制代码
for ( ; ; ) {
    // 永远执行
}

这个循环将无限执行,直到程序被强制中断或发生错误。⚠️


3. 增强型 for 循环

Java 提供了增强型 for 循环(也叫 "for-each" 循环),它特别适用于遍历数组或集合,语法更加简洁。✅

增强型 for 循环的语法:
java 复制代码
for (type item : collection) {
    // 执行的语句
}
  • type:数组或集合中元素的类型。
  • item :每次循环时,当前元素会赋值给 item
  • collection:要遍历的数组或集合。
示例:使用增强型 for 循环遍历数组

看一个简单的例子,我们用增强型 for 循环遍历数组:

java 复制代码
class EnhancedForDemo {
    public static void main(String[] args) {
        int[] numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
        for (int item : numbers) {
            System.out.println("Count is: " + item);
        }
    }
}
程序输出:
java 复制代码
Count is: 1
Count is: 2
Count is: 3
Count is: 4
Count is: 5
Count is: 6
Count is: 7
Count is: 8
Count is: 9
Count is: 10
解释:
  • 在增强型 for 循环中,我们遍历了 numbers 数组,每次循环中,当前的数组元素被赋值给 item
  • 这种方式不需要手动管理索引,代码更加简洁易懂。💡

📚 总结

  • for 循环:适用于已知循环次数或需要精确控制循环条件的场景。它提供了完整的循环控制结构,可以在每次迭代时进行初始化、条件判断和增量操作。
  • 增强型 for 循环:特别适用于遍历数组或集合,简化了代码,不需要显式的索引,代码更加简洁清晰,便于维护。

通过合理使用这两种 for 循环,你可以让代码更加高效、可读、可维护!💪

相关推荐
xiaofeichaichai38 分钟前
Webpack
前端·webpack·node.js
GetcharZp1 小时前
GitHub 49K+ Star!C++ 开发者必知的 JSON 神级库:从零到精通全指北
后端
问心无愧05131 小时前
ctf show web入门111
android·前端·笔记
xujinwei_gingko1 小时前
SpringBoot整合WebSocket
spring boot·后端·websocket
唐某人丶1 小时前
模型越来越强,我们还需要 Agent 工程吗?—— 从价值重估到 Harness 实践
前端·agent·ai编程
智码看视界1 小时前
现代Web开发基础:全栈工程师的起航点
前端·后端·c5全栈
程序员cxuan1 小时前
Claude Fable 5 来了
人工智能·后端·程序员
JS菌2 小时前
手写一个 AI Agent 全栈项目:从沙箱执行到子智能体的完整实现
前端·人工智能·后端
wang09072 小时前
自己动手写一个spring之IOC_2
java·后端·spring