理解Java语言的语句结构
1. 复合语句
在Java语言中,复合语句通过块结构实现,以花括号{ }为标记。类体和方法体都使用这种块结构来定义作用域。该块结构为局部变量提供了一个作用域,使得变量只能在其定义的范围内使用。理解这一点对于避免误用变量至关重要。
public class test { public static void main(String[] args) { int x = 521; int y = 125; if (x > y) { System.out.println(x + ">" + y); } else { System.out.println(x + "<" + y); } System.out.println("判断完毕"); } }
示例解释:这段代码用于比较两个整数x和y的大小并输出结果。代码通过if-else语句实现条件判断,确保根据不同的条件输出不同结果。
2. 条件语句
2.1 if 条件语句
if语句是用于执行特定代码块的条件判断。在Java中,if语句后面可以带else、else if等编句以实现多级判断。当条件满足时,执行if内的代码;否则执行else内的代码。如果有else if则会跳过无法满足的条件并检查下一个条件。
public class test { public static void main(String[] args) { int math = 99; int english = 98; if (math > 60) { System.out.println("数学及格了"); } else { System.out.println("数学没有及格"); } if (english > 60) { System.out.println("英语及格了"); } else { System.out.println("英语没有及格"); } System.out.println("判断完毕"); }
示例解释:这段代码用于判断学生是否及格。根据数学和英语成绩分别输出及格或没及格的信息。
2.2 switch多分支语句
switch语句用于处理多个条件并选择一个适当的处理方式。在Java中,switch可以与枚举类型配合使用,或者与其他类型如String进行比较。每个case后面跟着一个break语句,表示在匹配时执行对应的代码块。default用于处理未匹配的条件。
public class test { public static void main(String[] args) { String str = "狮子座"; switch (str) { case "狮子座": System.out.println(str + "是一个星座"); break; case "狮子": System.out.println(str + "是种动物"); break; default: System.out.println("以上条件都不符合"); } }
示例解释:这段代码用于判断字符串"狮子座"的类型。根据不同的case输出相应的结果。
3. 循环语句
3.1 while 循环语句
while循环语句用于重复执行一组代码,条件由Evaluator来决定。当条件满足时,执行代码块;否则不执行。while循环适用于已知条件较少的情况。
public class test { public static void main(String[] args) { int x = 1, sum = 0; while (x <= 100) { sum += x; x++; } System.out.println("sum = " + sum); }
示例解释:这段代码用于计算从1到100的自然数的和。循环条件x <= 100确保循环执行直到x超过100为止。sum变量用于累加每个x的值,最终输出总和。
3.2 do…while 循环语句
do-while循环与while循环不同之处在于,do-while的执行顺序是先执行代码块,然后检查条件。如果条件满足继续执行,否则进入while循环外。这种语法用于保证循环体至少执行一次。
public class test { public static void main(String[] args) { int a = 100; while (a == 60) { System.out.println("okay-while"); a--; } int b = 100; do { System.out.println("okay-do...while"); b--; } while (b == 60); }
示例解释:这段代码用于比较两个循环结构。第一个循环检查a是否为60并执行相应操作,第二个循环则确保至少执行一次do代码块,无论b是否等于60。