复合语句是由一对花括号括起来的语句块,可以包含多个语句。一般用于控制流程的执行顺序。
示例代码:
public class CompoundStatementExample {
public static void main(String[] args) {
int a = 5;
int b = 10;
// 复合语句开始
{
int c = a + b;
System.out.println("c = " + c);
}
// 复合语句结束
// 其他语句
System.out.println("a = " + a);
System.out.println("b = " + b);
}
}
代码运行结果:
c = 15
a = 5
b = 10
代码分析:
c
是局部变量,只在复合语句的作用域内有效。a
和b
是全局变量,在整个main
函数的作用域内有效。条件语句用于根据条件的不同来执行不同的代码块。
if
语句根据给定的条件判断是否执行特定的代码块。
示例代码:
public class IfStatementExample {
public static void main(String[] args) {
int x = 10;
if (x > 5) {
System.out.println("x大于5");
} else {
System.out.println("x小于等于5");
}
}
}
代码运行结果:
x大于5
代码分析:
x
的值大于5,则执行if
条件语句中的代码块,否则执行else
中的代码块。switch
语句根据给定的表达式的值,从多个选项中选择一个分支执行。
示例代码:
public class SwitchStatementExample {
public static void main(String[] args) {
int day = 3;
String dayOfWeek;
switch (day) {
case 1:
dayOfWeek = "星期一";
break;
case 2:
dayOfWeek = "星期二";
break;
case 3:
dayOfWeek = "星期三";
break;
default:
dayOfWeek = "未知";
break;
}
System.out.println("今天是" + dayOfWeek);
}
}
代码运行结果:
今天是星期三
代码分析:
day
的值,选择相应的分支执行。如果找不到匹配的分支,则执行default
分支。循环语句用于重复执行一段代码,直到给定的条件不再满足为止。
while
循环语句在执行循环体之前先判断条件是否成立,如果条件成立,则执行循环体。
示例代码:
public class WhileLoopExample {
public static void main(String[] args) {
int i = 1;
while (i <= 5) {
System.out.println("i = " + i);
i++;
}
}
}
代码运行结果:
i = 1
i = 2
i = 3
i = 4
i = 5
代码分析:
i <= 5
的条件是否成立。i
的值加1。do...while
循环语句先执行一次循环体,再判断条件是否成立,如果条件成立,则继续执行循环体。
示例代码:
public class DoWhileLoopExample {
public static void main(String[] args) {
int i = 1;
do {
System.out.println("i = " + i);
i++;
} while (i <= 5);
}
}
代码运行结果:
i = 1
i = 2
i = 3
i = 4
i = 5
代码分析:
i <= 5
的条件是否成立。for
循环语句在执行循环之前执行一次初始化语句,然后判断条件是否成立,如果条件成立,则执行循环体,并执行循环后操作。
示例代码:
public class ForLoopExample {
public static void main(String[] args) {
for (int i = 1; i <= 5; i++) {
System.out.println("i = " + i);
}
}
}
代码运行结果:
i = 1
i = 2
i = 3
i = 4
i = 5
代码分析:
int i = 1
的初始化语句。i <= 5
的条件是否成立。i++
的循环后操作。循环控制用于在循环体内部控制循环的执行流程。
break
语句用于立即退出循环,不再执行循环体中剩余的代码。
示例代码:
public class BreakStatementExample {
public static void main(String[] args) {
for (int i = 1; i <= 5; i++) {
if (i == 3) {
break;
}
System.out.println("i = " + i);
}
}
}
代码运行结果:
i = 1
i = 2
代码分析:
if
条件判断,当i
等于3时,执行break
语句退出循环。continue
语句用于跳过当前循环迭代,继续执行下一次循环迭代。
示例代码:
public class ContinueStatementExample {
public static void main(String[] args) {
for (int i = 1; i <= 5; i++) {
if (i == 3) {
continue;
}
System.out.println("i = " + i);
}
}
}
代码运行结果:
i = 1
i = 2
i = 4
i = 5
代码分析:
if
条件判断,当i
等于3时,执行continue
语句跳过当前循环迭代。在学习完流程控制和循环控制后,可以尝试以下练习并进行实践:
可以通过编写代码实现以上练习,并运行程序查看结果。
for (int i = 1; i <= 100; i++) {
if (i % 2 == 0) {
System.out.println(i);
}
}
代码分析:
以上代码使用for循环,从1到100遍历所有数字,通过判断i是否能被2整除来判断是否为偶数,如果是偶数则输出。
int sum = 0;
for (int i = 1; i <= 10; i++) {
sum += i;
}
System.out.println("1到10的和为: " + sum);
代码分析:
以上代码使用for循环,从1到10遍历所有整数,将每个整数累加到变量sum中,最后输出sum的值。
int n = 4; // 计算4的阶乘
int factorial = 1;
for (int i = 1; i <= n; i++) {
factorial *= i;
}
System.out.println(n + "的阶乘为: " + factorial);
代码分析:
以上代码使用for循环,从1到给定的数n遍历,将每个数字相乘并赋值给变量factorial,最后输出factorial的值作为阶乘的结果。在这个例子中,计算的是4的阶乘。