Java程序设计-3-流程控制.ppt_第1页
Java程序设计-3-流程控制.ppt_第2页
Java程序设计-3-流程控制.ppt_第3页
Java程序设计-3-流程控制.ppt_第4页
Java程序设计-3-流程控制.ppt_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Java程序设计,第三章 流程控制,理解程序控制的概念 运用条件语句,使用if, switch来控制程序的不同执行路径 掌握for、while和do句型结构控制程序的循环执行 理解并能应用break和continue调整程序中的流程控制结构。 理解并使用断言对程序进行调试 掌握Java语言中不同注释形式的区别 掌握利用Scanner类实现基本的输入方法 理解并能使用System.out对象中的不同输出方法 掌握基本的编程技巧。,3.1 句、块和空白,构成Java程序的最小单位是类,而类则是由属性和方法构成。方法代表了某个具体的能力,具体的一个方法就是由为完成某个功能而编写的若干条语句组成。,3.1.1 语句,在Java编程语言中,语句是一行由分号(;)终止的代码,它是一个完整的可执行单元。 例如 totals = a + b + c + d + e + f; 与下式相同 total = a + b + c + d + e + f;,在Java中,主要有以下的语句类型 声明语句 int a=0; /声明了一个整型变量 Student stu;/声明了一个类型是Student的对象 表达式语句 赋值表达式,自增表达式、方法调用、对象创建都可以和分号一起构成“表达式语句” System.out.println(“Welcome”); /输出字符串 a=Math.abs(-3.1); /返回绝对值 value=100; /为变量赋值 a+; /a自增 Student stu = new Student(“张华”); /创建一个Student类的实例,实例引用名为stu 控制语句,3.1.2 语句块,一个块(block)或一个复合语句是以上括号和下括号 为边界的语句集合; 块语句也被用来组合属于某个类的语句。 语句块可被嵌套。 / a block 语句 x = y + 1; y = x + 1; ,/类声明所包含的块语句 public class MyDate int day; int month; int year; ,/ 一个嵌套块语句的例子 while ( i large ) /循环语句快开始,用“表示 a = a + i; - if ( a = max ) /判断语句快开始,用“表示 b = b + a; a = 0; /判断语句块结束,用“表示 /循环语句快结束,用“表示,3.1.3空白,在源代码元素之间允许空白,空白的数量不限。空白(包括空格、tabs和新行)可以改善你的对源代码的视觉感受。 int x; x = 23 + 54; int x x = 23 + 54; ,3.2逻辑判断和循环控制,程序控制可以定义为对程序语句的执行顺序进行的规定。 Java提供了条件语句在两种或更多的情况中做出选择,根据情况执行不同的程序语句; Java也提供了更有效的循环语句以控制那些需要重复执行的语句。,3.2.1 条件判断与决策,1 if, else语句 if (布尔表达式) 语句或块; else 语句或块; ,嵌套的 if ,else if (布尔表达式) 语句或块; else if(布尔表达式) 语句或块; else 语句或块; ,2 switch语句 switch语句允许程序员更多情况下选择不同的程序逻辑,当情况发生时,按照事先准备好的方法执行。switch语句的句法是: switch (expr1) case expr2: statements; break; case expr3: statements; break; default: statements; ,在switch (expr1) 语句中,expr1必须与int类型是赋值兼容的;byte, short或char类型可被升级;不允许使用浮点或long表达式。 变量或表达式的值不能与任何case值相匹配时,可选缺省符(default)指出了应该执行的程序代码。 如果没有break语句作为某一个case代码段的结束句,则程序的执行将继续到下一个case,而不检查case表达式的值。 在switch (expr1) 语句中,expr1也可以是枚举类型 public enum Month JANUARY, FEBRUARY, MARCH, APRIL, MAY, JUNE, JULY, AUGUST, SEPTEMBER, OCTOBER, NOVEMBER, DECEMBER ,3.2.2 循环,循环语句使语句或块的执行得以重复进行。Java编程语言支持三种循环构造类型:for, while和do 循环。 for和while循环是在执行循环体之前测试循环条件,而do 循环是在执行完循环体之后测试循环条件。这就意味着for和while循环可能连一次循环体都未执行, 而do循环将至少执行一次循环体。,for循环的句法是: for (init_expr; boolean testexpr; alter_expr) statement or block 例如: for (int i = 0; i 10; i+) System.out.println(“i = “+i); ,增强的for循环 public class ForEnhancedDemo public static void main(String args) int arrayOfInts = 32, 87, 3, 589, 12, 1076, 2000, 8, 622, 127 ; for (int element : arrayOfInts) System.out.print(element + “ “); System.out.println(); ,while循环 while循环的句法是: while (布尔表达式) 语句或块 例如: int i = 0; while (i 10) System.out.println(“i = “+ i); i+; System.out.println(“Finally!“);,do循环 do循环的句法是: do 语句或块; while (布尔测试) 例如: int i = 0; do System.out.println(“i = “ +i); i+; while (i 10); System.out.println(“Finally!“);,3.2.3 跳转,下列语句可被用在更深层次的控制循环语句中: break 标注; continue标注; label: 语句; break语句被用来从switch语句、for语句等循环语句的块中退出到预先设定的label处。 continue语句被用来略过并跳到循环体的结尾。 Label: 被用来标识循环构造的复合语句。当程序运行到break 标注处时,程序跳出整个循环体的结尾处。,loop: while (true) for (int i=0; i 100; i+) switch (c = System.in.read() case -1: case n : / 跳到最后处 break loop; / end for / end while,课堂练习,指出输出结果 x = 2; y = 3; if( x 2) if ( y 2) int z = x + y; System.out.println(“z is ” + z); else System.out.println(“x is ” + x);,指出输出结果 x = 2; y = 3; if( x 2) if ( y 2) int z = x + y; System.out.println(“z is ” + z); else System.out.println(“x is ” + x);,执行下列switch语句后y是多少? x = 3; switch (x + 3) case 6: y =1; default: y + = 1; ,下面循环输出i+4值的程序有什么错误 public class ShowErrors public static void main(String args) for(int i=0;i10;i+); System.out.println(i+4); ,基本的输入输出控制,控制台的输入,Scanner reader =new Scanner(System.in); 程序,字符界面的输出,print print是PrintStream类提供的一种输出方法,支持boolean、char、char、double、float、int、long、short、String、Object的直接输出 println println方法不同于print的主要之处在于将输出信息打印完之后,还要写出行分割字符串,默认情况下,这个行分割字符串是“n“,即输出一个换行回车。 Printf printf则是一种格式化输出,类似于c语言的printf(),实现了对布局对齐和排列的支持,以及对数值、字

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论