第3讲java基本语法(二)
第 3 讲 Java 基本语法(二) 3.1 分支 3.2 循环 3.3 跳转 3.4 开关 3.5 本讲小结 讲后练习 第 3 讲 Java 基本语法(二) if 语句和 switch 开关: switch 语句是多分支判断选择结构。根据选择器的 值, switch 语句可以从很多可能的条件中选择一个分支 中的语句或语句块执行。 语法与规则 switch ( 表达式表达式 ) { case 值值 1: 语句语句 1;// 满足值满足值 1 的条件执行语句的条件执行语句 break; case 值值 2: 语句语句 2;// 满足值满足值 2 的条件执行语句的条件执行语句 break; . case 值值 n: 语句语句 n;// 满足值满足值 n 的条件执行语句的条件执行语句 break; default: 缺省语句缺省语句 ; } 语法与规则 if ( 条件表达式条件表达式 ) { // 做某事的语句做某事的语句 ; . }// 如果是单条语句,可不使用如果是单条语句,可不使用 {} else{ // 做另一件事的语句做另一件事的语句 1; . }// 如果是单条语句,可不使用如果是单条语句,可不使用 {} if-else 语句允许在两个程序块之间进行选择。同样,无论条 件的值如何,都能确保有且只有一种选择被执行。 if 语句 还可以嵌套任意层以构成更复杂的判断选择结构。 • if 语句在一定程度上可以与 switch 语句进行转换: • if-else 语句: // IfElse.java • public class IfElse { •public static void main(String[] args) { •int n = 12; •if(n % 2 != 0) •System.out.println(“n 是奇数 “); •else •System.out.println(“n 不是奇数 “); •} • } • switch-case 语句: • public class tes { •public static void main(String args[]){ •int n=12; •switch(n%2){ •case 0: •System.out.println(“ 是偶数 “);break; •default: •System.out.println(“ 不是偶数 “);break; •} •} } 循环语句 • 1 、 while 循环 • while 循环的格式如下: • while (布尔值或布尔表达式) • 语句; • 在 while 循环开始时,首先计算循环条件(布尔表达式 的值),结果为“真”进入循环,否则就退出循环。 每次循环结束后,都要重新计算布尔表达式的值。最 重要的是循环体中一定要有使布尔表达式值改变的操 作。 2 、 do-while 循环 do-while 循环是 while 循环的变体,其格式如下: do { 语句; }while (布尔值或布尔表达式) 与 while 循环不同, do-while 循环先进入循环体,然 后再计 算循环条件。也就是说 do-while 循环最少执行 一次循 环体。 3 、 for 循环 for 循环是使用最频繁的循环,其格式如下: for (初始操作;循环继续的条件;每次循环后的操作) { 语句; } for 循环的步骤如下: ( 1 )进行初始操作,初始操作只进行一次; ( 2 )判断使循环继续的条件,如果结果为“真”,则进入循 环体,否则进入( 4 ); ( 3 )循环体循环一次后,进行每次循环后的操作,然后再判 断使循环继续的条件。如果为真,进入( 2 ),否则进入( 4 ); ( 4 )跳出循环。 三种循环语句的比较 while 循环 do-while 循环 for 循环 while ( 布尔表达式布尔表达式 ) { 语句语句 ; . } // 如果循环体是单条语句,可不使用如果循环体是单条语句,可不使用 {} do { 语句语句 ; . } while ( 布尔表达式布尔表达式 ); for ( 初值表达式 初值表达式 ; 布尔表达式 布尔表达式 ; 步进表达式 步进表达式 ) { 语句语句 ; . } // 如果循环体是单条语句,可不使用如果循环体是单条语句,可不使用 {} • 使用三种循环语句来计算 1+2+…+100 的值 • while 循环计算 1+2+…+100 的值 • // WhileTest.java • public class WhileTest { •public static void main(String[] args) { •int i = 1; •int sum = 0; •while (i = 100){ •sum = sum + i; •i++; •} •System.out.println(“sum =“ +sum); •}} • do.while 循环计算 1+2+…+100 的值 • // DoWhileTest.java • public class DoWhileTest { •public static void main(String[] args) { •int i = 1; •int sum = 0; •do{ •sum = sum + i; •i++; •}while(i = 100); •System.out.println(“sum =“ +sum); •} • } • for 循环计算 1+2+…+100 的值 • // ForTest.java • public class ForTest { •public static void main(String[] args) { •int sum = 0; •for (int i = 0;i = 100;i++){ •sum = sum + i; •} •System.out.println(“sum =“ + sum); •} • } 跳转 •在循环中,可以使用 break 和 continue 来控制循环的 流程。 break 用来强行跳出循环,不执行循环中的剩余 语句,而 continue 用来停止本次循环,然后再从循环的 起始处开始下一次循环。 Java 还支持带标号的 break 和 continue 。 • 下面的代码展示了带标号的 break 的用法: • // LabelBreak.java • public class LabelBreak { •public static void main(String[] args) { •outer:for (int i = 0;i 5;i++){ •for (int j = 0;j 5;j++){ •if (i == 2)break outer; •System.out.println(“i =“ + i); •}}}} • break 跳出的是离 break 语句最近的那层循环,而 break outer 跳 出的是由 outer 标示的那层循环。 3.5 本讲小结 本讲主要讲述了 Java 语言的基本语