配色: 字号:
《Java面向对象程序设计》04 Java程序流程控制写字字帖
2023-05-25 | 阅:  转:  |  分享 
  
目标了解程序流程控制的概念理解while、do while和for循环的相同点和不同点掌握应用流程控制的分支语句、循环语句等掌握嵌套循环以
及流程跳转语句概述Java语言中的流程控制与C语言类似,主要有分支语句、循环语句等本章结合以前学过的C语言知识讲解Java 中的流
程控制分支语句分支语句使部分程序代码在满足特定条件下才会被执行 Java语言支持两种分支语句:if…else语句switch语句
if…elseif…else…分支语句为两路分支语句 if (布尔表达式) { 程序代码块; }else{
程序代码块; }布尔表达式是值为true或false的表达式 if…elseif后面的表达式必须是布尔表达式,而不能为数字类
型 //编译出错if (x) {System.out.println(“x 不等于0”);}else{System.out.pr
intln(“x 等于0”);}//正确写法:if (x !=0 ) {System.out.println(“x 不等于0”)
;}else{System.out.println(“x 等于0”);}与C语言的区别:在C语言中的条件判断表达式可以是一个整型表
达式if…elseif语句后面的else语句并不是必须的 if (x > 0) { System.out.println
(“大于0”);}if (x == 0) { System.out.println(“等于0”);}if (x < 0
) { System.out.println(“小于0”);}if…else假如if语句或else语句的程序代码块中包括多
条语句,则必须放在大括号{}内 以下两段代码的输出结果不同int a=1, b=1;if (a > b) a++; b
--;System.out.println(“a=”+a+” b=”+b);int a=1, b=1;if (a > b) {
a++; b--;}System.out.println(“a=”+a+” b=”+b);if…else特殊的串联编程语
法结构 (多路分支)//语法if (expression1) { Statement1} else if (expression
2) { Statement2} else if (expressionM) { StatementM} else { St
atementN}//示例if ( x > 0) { System.out.println(“大于0”);}else if
(x == 0) { System.out.println(“等于0”);}else if ( x < 0 ) {
System.out.println(“小于0”);}if…else公司的财务管理信息系统:发工资时对员工的生活补助给出提示:
if…else员工补助提示程序(sal为int型变量存放薪水) public class Employee { ……publi
c void showComm( ){ if (sal >= 10000) { System.
out.println("不给予生活补助"); } else if (sal >= 3000) {
System.out.println("给予500元生活补助"); } else if (sal >= 2
000) { System.out.println("给予600元生活补助"); } els
e { System.out.println("给予800元生活补助"); }}}if…els
e 有一个计算器类可以进行四则运算(加、减、乘、除)。编写一个程序来实现可以让用户随意选择一种四则运算 。程序演示switch分支
语句switch语句是多路分支语句switch ( expression) {case value1: stateme
nts; break;case value2: statements; break;……case v
alueN: statements; break;default: statements;
break;}switch分支语句根据考试成绩的等级打印出相应的百分制分数段。 switch分支语句示例代码 switch ( g
rade) {case ''A'': System.out.println(grade+" is 85~100");
break;case ''B'': System.out.println(grade+" is 70~84"); b
reak;case ''C'': System.out.println(grade+" is 60~69");case ''D
'': System.out.println(grade+" is <60"); break;default:
System.out.println("Invalid Grade!"); break;}switch分支语句使用swi
tch语句时的规则在switch(expression)语句中表达式的类型必须是与int类型相兼容的基本类型:byte, char
, short, int 其他规则与C语言中的switch语句相同循环语句循环语句的作用是反复执行一段代码,直到不满足循环条件为止
循环语句应该包括如下4部分内容:初始化部分循环条件循环体迭代部分Java语言提供3种循环语句:forwhiledo…while循
环语句while循环while循环先判断循环条件,再执行循环体 [ 初始化部分 ]while (循环条件) { 循环体,包括迭代部
分 }while循环例:max (int[] array) 方法能返回整数数组中的最大值 public int max(int[]
array) { int i = 1, loc = 0; //初始化部分 while (i < array
.length) { //循环条件,i为循环控制变量 //以下是循环体 if (array[
loc] < arrary[i])) loc = i; i++; //迭
代部分 } return array[loc];}do...while...循环 do…while…语句
首先执行循环体,然后再判断循环条件 [ 初始化部分 ]do { 循环体,包括迭代部分 } while (循环条件);do...wh
ile...循环例:使用do…while循环找出整数数组中的最大值 public int max(int[] array) {
int i = 1, loc = 0; //初始化部分 do { //以下是循环体
if (array[loc] < arrary[i])) loc = i;
i++; //迭代部分 } while (i < array.length) ; //循环条件
return array[loc];}for循环 for语句与while语句一样,先判断循环条件,再执行循环体 for
(初始化部分;循环条件;迭代部分) { 循环体 }for循环 例:使用for循环找出整数数组中的最大值 public
int max(int[] array) { int loc = 0; for(int i=1; i y.length; i++){ if(array[loc] < array[i] loc = i ;
} return array[loc];}控制for循环的变量常常只用于本循环,而不用在程序的其它地方。此时可以在循环
的初始化部分声明变量 多重循环 多重循环是各种循环语句相互嵌套 for ( int i=5 ; i >0 ; i-- ) {
for ( int j=1; j<= i; j++) System.out.print("");
System.out.println(); //打印一个换行符}选择合适的循环语句如果预先知道循环的次数或者需要使用一个
整型变量,并在每次循环时都要加上或减去一个固定值,可以用for语句如果要以通用条件为循环控制条件,则可以考虑使用while语句以通
用条件为循环控制条件,而且循环体中的语句至少要被执行一次,就应该使用do-while语句流程跳转语句break、 continue
、 return语句来控制流程跳转 //计算1~10 之和int a=1, result =0;while (true) {
result += a++; if (a==11) break; }//计算1~20 之和, 并跳过10int a=1,
result =0;while (a>20) { result += a++; if (a==10) continue; } //一旦流程执行到某个return语句,则立即退出本方法 public int amethod(int x) { if (x > 0) return 88; if (x==0) return 99; return -1; }总结Java中的流程控制与C语言基本相同分支结构:if…else、switch…case循环结构:while、do…while、for跳转语句:break、continue、return
献花(0)
+1
(本文系大高老师首藏)