Java套课件幻灯片完整版ppt教学教程最全电子讲义(最新).pptx

上传人:春哥&#****71; 文档编号:4270398 上传时间:2021-07-16 格式:PPTX 页数:609 大小:11MB
返回 下载 相关 举报
Java套课件幻灯片完整版ppt教学教程最全电子讲义(最新).pptx_第1页
第1页 / 共609页
Java套课件幻灯片完整版ppt教学教程最全电子讲义(最新).pptx_第2页
第2页 / 共609页
点击查看更多>>
资源描述

《Java套课件幻灯片完整版ppt教学教程最全电子讲义(最新).pptx》由会员分享,可在线阅读,更多相关《Java套课件幻灯片完整版ppt教学教程最全电子讲义(最新).pptx(609页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、,Java面向对象程序设计,第一章 走进Java,北京科学出版社 主编:李恒杰,CONTENTS,目录,1,Java故事编程环境编程工具技术应用,Java语言简介,Java故事,1.1.1,Java是SUN公司的产品,从1996年发布JDK1.0以来,经过多年的发展陆续发布了JDK1.1,JDK1.2,JDK1.3,JDK1.4,JDK1.5版本。2009年,甲骨文(Oracle)公司宣布收购SUN,甲骨文公司又陆续发布了JDK6.0,JDK7.0,2014年发布了JDK8.0版本。 JAVA是一个小岛产的咖啡的名字,味道独特。SUN公司使用JAVA这个名称寓意着做Java程序就像享受咖啡一样

2、,享受生活。如图所示,用一杯热腾腾的咖啡作为Java的标志。 James Gosling(詹姆斯高斯林)出生于加拿大,是一位计算机编程天才。在卡内基梅隆大学攻读计算机博士学位时,他编写了多处理器版本的Unix操作系统,是JAVA编程语言的创始人,被称为Java之父。如图1.2是James Gosling的工作照片。,Java编程环境,1.1.2,(1)Java开发工具包 JDK(Java Development Kit)称为Java开发包,是一个编写Java应用程序的程序开发环境。JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一些Java

3、工具和Java的核心类库(Java API)。可以把Java API类库中的Java SE API子集和Java虚拟机这两部分统称为JRE(JAVA Runtime Environment),JRE是支持Java程序运行的标准环境。 (2)Java运行时环境 JRE是个运行环境,JDK是个开发环境,如图所示是JDK结构图。因此写Java程序的时候需要JDK,而运行Java程序的时候就需要JRE。而JDK里面已经包含了JRE,因此只要安装了JDK,就可以编辑Java程序,也可以正常运行Java程序。,Java编程工具,1.1.3,Eclipse:一个开放源代码的、基于Java的可扩展开发平台。

4、NetBeans:开放源码的Java集成开发环境,适用于各种客户机和Web应用。 IntelliJ IDEA:在代码自动提示、代码分析等方面的具有很好的功能。 MyEclipse:由Genuitec公司开发的一款商业化软件,是应用比较广泛的Java应用程序集成开发环境。 EditPlus:如果正确配置Java的编译器“Javac”以及解释器“Java”后,可直接使用EditPlus编译执行Java程序。,Java技术应用,1.1.4,(1) Android应用 许多的 Android应用都是Java程序员开发者开发。虽然 Android运用了不同的JVM以及不同的封装方式,但是代码还是用Jav

5、a语言所编写。相当一部分的手机中都支持JAVA游戏,这就使很多非编程人员都认识了JAVA。 (2) 在金融业应用的服务器程序 Java在金融服务业的应用非常广泛,很多第三方交易系统、银行、金融机构都选择用Java开发,因为相对而言,Java较安全。 (3) 网站 Java 在电子商务领域以及网站开发领域占据了一定的席位。开发人员可以运用许多不同的框架来创建web项目,SpringMVC,Struts2.0以及frameworks。 (4) 嵌入式领域 Java在嵌入式领域发展空间很大。在这个平台上,只需130KB就能够使用Java技术(在智能卡或者传感器上)。,Java技术应用,1.1.4,(

6、5) 大数据技术 Java技术在大数据处理领域应用广泛。例如Hadoop是一个由美国Apache基金会所开发的分布式系统基础架构,以一种可靠、高效、可伸缩的方式进行大数据处理。Hadoop主要是基于Java进行开发的。 (6) 高频交易 Java平台提高了高频交易的特性和即时编译,他同时也能够像C+一样传递数据。正是由于这个原因,Java成为的程序员编写交易平台的语言,因为虽然性能不比C+,但开发人员可以避开安全性,可移植性和可维护性等问题。 (7) 科学应用 Java在科学应用中是很好选择,包括自然语言处理。最主要的原因是因为Java比C+或者其他语言相对其安全性、便携性、可维护性以及其他高

7、级语言的并发性更好。,2,下载和安装JDK配置JDK的环境变量,开发前 准备,下载和安装JDK,1.2.1,在开发一个Java应用程序前,首先要确保计算机上安装有JDK,JDK可以从Oracle公司的网站上(,下载和安装JDK,1.2.1,JDK(Java Development Kit),即Java开发工具包,是Oracle公司提供的用于开发Java应用程序的标准开发工具包。一台电脑要想运行Java程序,必须安装JDK。JDK中包含JRE(Java Runtime Environment),JRE是Java运行时环境。JRE中包含了JVM(Java Virtual Machine)即Java

8、虚拟机和JCL(Java Class Library)即Java类库。 从官方下载JDK后进行安装,默认安装到C:Program FilesJavajdk1.8.0_121目录下。如图1.5所示是JDK的根目录。JDK的目录中包含两个重要目录,它们是bin目录和lib目录。bin目录中存放JDK的命令,lib目录存放系统类库。,配置JDK的环境变量,1.2.2,JDK安装后要对JDK进行环境变量配置,环境变量需要配置3个属性,如表所示。,假设JDK的安装目录为C:Program FilesJavajdk1.8.0_121,环境变量配置如下: JAVA_HOME环境变量的值是JDK的安装根目录,

9、CLASSPATH环境变量的值是JAVA_HOME目录下的(lib)目录和点(.),PATH环境变量的值是JAVA_HOME目录下的bin目录。具体配置如表所示。,3,编写HelloWorld程序,编写HelloWorld程序,1.3,开发一个Java程序分3步,如下: 1.创建Java源程序。 2.将源程序编译为字节码文件。 3.执行字节码文件。,第一步:创建Java源程文件 Java源文件是以.java结尾的文本文件,是程序员创建和编写的。 新建一个记事本文件,将该文件命名为HelloWorld.java并保存到C盘根目录下。在HelloWorld.java文件中输入右面的代码。,/* *

10、HelloWorld程序 */ public class HelloWorld public static void main(String args) System.out.println(HelloWorld); ,编写HelloWorld程序,1.3,第二步:将源文件编译为字节码文件 字节码文件是以.class结尾的文件,字节码文件通过Javac编译器编译出来的。 打开控制台,在控制台中使用Java编译器命令(javac)将java源文件编译成字节码文件,字节码文件是以.class为扩展名的文件。编译后会在C盘根目录下产生编译完的HelloWorld.class字节码文件,字节码文件是不

11、允许修改的,只能修改源文件后重新生成字节码文件。,第三步:运行字节码文件 在控制台中使用java解释器命令(java)运行HelloWorld字节码文件,显示java程序运行结果。,4,Java跨平台编译和解释,开发前 准备,Java跨平台,1.4.1,我们以HelloWorld程序为例,分析Java程序执行过程和Java跨平台的特性。 Java是跨平台的语言,平台是指操作系统和CPU,每个平台能够运行与该平台匹配的机器码。Java跨平台就是让所有的平台都能运行Java代码。Java是如何做到的呢?Java是通过JVM(Java Virtual Machine),即Java虚拟机来实现的。 所

12、有的Java源程序(Source.java)都可以编译成字节码(Source.class),字节码可以执行在任何一个JVM上,JVM可以运行在专用的平台上,例如JVM for DOS,JVM for windows,JVM for Unix等,如图1.14所示。所有的JVM都可以将字节码文件(Source.class)转换成平台对应的机器码。,Java跨平台,1.4.1,回顾Java程序执行的3个步骤。即从Java源文件到字节码文件到执行。Java程序的执行过程是首先通过java编译器命令javac,将Java源程序编译成字节码文件,字节码文件在虚拟机中使用java解释器命令java,将字节码

13、文件转换成机器码,机器码运行在各自的平台上,以此实现java跨平台。 跨平台是Java最显著的特性,Java还有一些其他特性。例如:简单性,面向对象,分布性,编译和解释性,稳健性,安全性,可移植性,高性能,多线程性,动态性等,这些特性需要在后续的学习中体会。,1.在计算机上配置Java开发环境。 2.利用Java输出自我介绍,格式如下:,本章课后任务,3.通过上机练习体会System.out.print()和System.out.println()的区别。,.,.,.,谢谢聆听 THANK YOU,Java面向对象程序设计,第二章 变量与表达式,北京科学出版社 主编:李恒杰,CONTENTS,

14、目录,1,数据类型变量变量命名规则,数据类型与变量,数据类型,2.1.1,数据是描述客观事物的数字、字母以及能够输入到计算机中的符号。例如“武松”、“软件一班”、28、170等都是数据。数据可根据其特点进行分类,例如“武松”和“软件一班”可以归为字符串类,28和170可归为数字类。 在Java中数据类型分为两大类:基本数据类型和引用数据类型。基本类型包括八种,分别是byte,short,int,long,float,double,boolean,char,下表展示了八种基本数据类型。引用类型包括数组、接口、类等,除了基本类型以外的数据都是引用类型。,数据类型,2.1.1,数据类型,2.1.2,

15、变量是指在程序运行过程中其值可以改变的量。变量的使用必须先声明,然后初始化,最后才能使用变量。 变量的声明语法: 修饰符 数据类型 变量名称=值; 例如 int age = 28; int age; int age,score; float f=1.2F; double d=2.0D; long L= 38L;,变量命名规则,2.1.3,Java语言是区分大小写的,变量的命名也有规范,下表列举了变量命名规则。,每个公司在开发中都有自己定义变量的规范,无论各公司规范是否相同,都会遵循“见名知义”的原则。,2,表达式运算符,表达式和运算符,表达式,2.2.1,表达式是运算符和操作数的有效组合,操作

16、数可以是变量、常量、方法调用的返回值。例如表达式 z = x + y中z、x、y是操作数,=、+是运算符。如图描述了表达式是由运算符和操作数组成的。,运算符,2.2.2,1:算术运算符。 算术运算符用来完成数学上的加、减、乘、除四则运算。如表展示了算术运算符。,运算符,2.2.2,代码示例 public class Task1 public static void main(String args) int width = 30; double height = 10.5; double result = (width + height) * 2; System.out.print(矩形的周长

17、是:+result); ,运算符,2.2.2,老兵带你分析代码: 程序中定义了int类型的变量width,初始化为30,定义了double类型的变量height,初始化为10.5,定义了表达式(width+height) * 2,并将表达式的结果赋值给double类型的变量result,最后向控制台输出矩形的周长。,运算符,2.2.2,public class Task2 public static void main(String args) int width = 30; int height = 10; double result = width * height / 2; System

18、.out.print(三角形的面积是:+result); ,运算符,2.2.2,老兵带你分析代码: 程序中定义了int类型的变量width,初始化为30,定义了int类型的变量height,初始化为10,定义了表达式width*height/2,并将表达式的结果赋值给double类型的变量result,最后向控制台输出三角形的面积。,运算符,2.2.2,public class Task3 public static void main(String args) int i= 5,x; x=i+; System.out.println(x=+x); System.out.println(i=+

19、i); x=+i; System.out.println(x=+x); System.out.println(i=+i); ,运算符,2.2.2,老兵带你分析代码: 1.程序中定义了int类型的变量i,初始化为5,定义了int类型的变量x。定义了表达式x=i+,在该表达式中有两个运算,一是赋值运算,二是自增运算,由于+写在变量i的后面,因此+运算要后于赋值运算。即先将i的值赋给x后,i再自增。运行的结果是x的值是5,i的值是6。 2.程序中定义了表达式x=+i,在该表达式中有两个运算,一是赋值运算,二是自增运算,由于+写在变量i的前面,因此+运算要先于赋值运算。即先将i的值自增,然后再将自增后

20、的i的值赋给x。运行的结果是x的值是7,i的值是7。,运算符,2.2.2,2:关系运算符 关系运算符用于操作数之间的比较。下表展示了关系运算符。,运算符,2.2.2,3:逻辑运算符 逻辑运算符是对布尔类型的操作数进行与、或、非的运算。下表展示了逻辑运算符。,运算符,2.2.2,4:位运算 位运算是对整数类型的操作数进行的二进制运算,包括7个:分别是 (位反)、 2、使用Scanner对象提供的方法获取用户输入的数据: int score = input.nextInt();,运算符,2.2.2,代码示例: public class Task4 public static void main(S

21、tring args) Scanner input =new Scanner(System.in); int xb_java; int xb_sql; int lb_java; int lb_sql; System.out.println(请输入新兵的java成绩); xb_java = input.nextInt(); System.out.println(请输入新兵的sql成绩); xb_sql = input.nextInt();,运算符,2.2.2,代码示例: System.out.println(请输入老兵的java成绩); lb_java = input.nextInt(); Sy

22、stem.out.println(请输入老兵的sql成绩); lb_sql = input.nextInt(); System.out.println(新兵java成绩追上老兵了吗?+(xb_java lb_java); System.out.println(新兵sql成绩追上老兵了吗?+(xb_sql lb_sql); System.out.println(新兵每门课成绩都追上老兵了吗?+(xb_sql lb_java) ,运算符,2.2.2,运行结果: 请输入新兵的java成绩 78 请输入新兵的sql成绩 89 请输入老兵的java成绩 83 请输入老兵的sql成绩 92 新兵java成

23、绩追上老兵了吗?false 新兵sql成绩追上老兵了吗?false 新兵每门课成绩都追上老兵了吗?false,运算符,2.2.2,Scanner对象中提供了多种方法用于输入不同类型的数据,下表展示了Scanner对象输入不同类型数据的方法。,3,类型转换表达式的数据类型,数据类型转换,类型转换,2.3.1,当将一种数据类型的值赋给另一种数据类型的变量时,出现了数据类型的转换。在整数类型和浮点数类型中,可以将数据类型按照精度从“高”到“低”排列如下级别: double float long int short byte 高级别 -低级别 赋值运算中,数据类型转换规则如下: 1:当将低级别的值赋给

24、高级别的变量时,系统会自动完成数据类型的转换。例如: int i = 52; float x; x = i; /自动转换,类型转换,2.3.1,2:当将高级别的值赋给低级别的变量时,必须进行强制类型转换。强制类型转换的形式如下: (类型标识符)待转换的值; 例如: float f = 1.6F; int i=(int)f; /将float类型的值转换成int类型的值后存储到int类型变量i中。 强制类型转换可能会造成数据丢失,如上例中f的值是1.6,转换成int类型后会丢失精度,i的值是1。,类型转换,2.3.1,public class Task5 public static void ma

25、in(String args) int i=15,j=4,k; float f1,f2; k=i/j; f1=i/j; f2=(float)i/j; System.out.println(k=+k); System.out.println(f1=+f1); System.out.println(f2=+f2); ,类型转换,2.3.1,老兵带你分析代码: 1.程序中声明了3个int类型的变量i、j、k。并给i和j分别初始化为15和4,还声明了两个float类型的变量f1和f2。在“k=i/j”中,int类型值15与4进行整除运算,其结果是int类型值3,并将该值赋值给int类型变量k,所以k的

26、值是3。通过“f1=i/j”,int类型值15与4进行整除运算,其结果是int类型值3,在将该值赋给float类型变量f1时,系统自动进行数据类型转换,将int类型值3转换成float类型值3.0,并将转换后的值赋给f1,所以f1的值是3.0。在“f2=(float)i/j”中,int类型值15被强制转换成float类型值15.0,该值与int类型值4进行除法运算时,系统自动将int类型值4转换成float类型值4.0,然后对15.0与4.0进行除法运算,其结果是float类型值3.75,最后将该值赋给float类型变量f2,所以f2的值是3.75。,表达式的数据类型,2.3.2,表达式的数据

27、类型由运算结果的数据类型决定。例如: public class Example1 public static void main(String args) int i= 5; float f= 6f; double d = 7.8d; double result = i + f + d; 表达式result = i + f + d中的操作数i是int类型,f是float类型,d是double类型,计算的结果result的类型是表达式中占用字节空间最大的类型,即double类型。,1.请描述变量声明规则与规范。 2.请写出Java中的8种基础数据类型的名称,以及占用的字节数量。 3.请描述发生自

28、动类型转换的条件。 4.通过代码试验将较大的long类型的变量(值大于int型能够描述的最大数字)强制转换为int类型后的值是多少。 5.表达式123 + 456.58 + ”Im lucky”的值是多少?,本章课后任务,6.分析下面的程序运行结果 1:byte b = 1; 2:short s = 2; 3:short x = s + b; 第3行报错,因为 short类型 + byte类型 = int类型 short类型 + shrot类型 = int类型 byte类型 + byte类型 = int类型 7.分析下面的程序运行结果 short s = 1; /1在short范围内,所以可以

29、赋值 s = s + 1; /1是int类型,运算后提升到int类型,不能赋值给short类型,本章课后任务,8.分析下面的程序运行结果 short s = 1; /1在short范围内,所以可以赋值 s = 18 + 1; /18+1在编译时确定了其值在short范围内,因此可以赋值,本章课后任务,.,.,.,谢谢聆听 THANK YOU,Java面向对象程序设计,第三章 分支结构,北京科学出版社 主编:李恒杰,CONTENTS,目录,1,三元表达式嵌套的if语句并列的if语句,if分支结构,if分支结构,3.1,程序中有些程序段的执行是有条件的,当条件成立时,执行一些程序段,当条件不成立时

30、执行另一些程序段或者不执行,这种结构称为分支结构,也叫选择结构。 if语句是最常用的分支结构,其中的条件用布尔表达式表示。如果布尔表达式的值为true,表示条件满足,执行某一语句。如果布尔表达式的值为false,表示条件不满足,执行另一语句。if语句是二分支的选择语句。,if分支结构,3.1,if语法格式: if(布尔表达式) 语句1; else 语句2; 说明: 1.如果布尔表达式的值为true,执行语句1;否则执行语句2。 2.其中else子句是可选的。 3.如果没有else子句,在布尔表达式的值为false时,什么也不执行,形成单分支。,if分支结构,3.1,if语句执行流程如图3.1所

31、示。,单分支 二分支,if分支结构,3.1,代码示例 public class Task1 public static void main(String args) Scanner input =new Scanner(System.in); int likui,yanqing; System.out.println(请输入新兵李逵的成绩); likui = input.nextInt(); System.out.println(请输入新兵燕青的成绩); yanqing = input.nextInt();,if分支结构,3.1,代码示例: if(likuiyanqing) System.ou

32、t.println(新兵李逵被选为新兵标兵); else System.out.println(新兵燕青被选为新兵标兵); ,if分支结构,3.1,老兵带你分析代码: 1.程序中的布尔表达式likuiyanqing成立时执行System.out.println(新兵李逵被选为新兵标兵);否则执行System.out.println(新兵燕青被选为新兵标兵); 运行结果: 请输入新兵李逵的成绩 78 请输入新兵燕青的成绩 87 新兵燕青被选为新兵标兵,三元表达式,3.1.1,新兵一班和二班进行了一场射击比赛,从键盘上输入一班和二班的比赛成绩,显示比赛成绩优先的班。这个问题我们可以使用if语句实现

33、,参考代码如下: public class Demo1 public static void main(String args) Scanner input =new Scanner(System.in); int b1,b2,max; System.out.println(请输入一班比赛成绩); b1 = input.nextInt(); System.out.println(请输入二班比赛成绩); b2 = input.nextInt();,三元表达式,3.1.1,新兵一班和二班进行了一场射击比赛,从键盘上输入一班和二班的比赛成绩,显示比赛成绩优先的班。这个问题我们可以使用if语句实现,参

34、考代码如下: public class Demo1 public static void main(String args) Scanner input =new Scanner(System.in); int b1,b2,max; System.out.println(请输入一班比赛成绩); b1 = input.nextInt(); System.out.println(请输入二班比赛成绩); b2 = input.nextInt();,三元表达式,3.1.1,if(b1b2) max = b1; else max = b2; System.out.println(优胜班的成绩是+max)

35、; 运行结果: 请输入一班比赛成绩 88 请输入二班比赛成绩 99 优胜班的成绩是99,三元表达式,3.1.1,类似的像上面这段程序,如果条件成立时为变量max赋值b1,条件不成立时为max赋值b2,这里出现了三个操作数,分别是max,b1,b2。像这种运算可以使用三元运算符来实现。参考下面的代码 import java.util.Scanner; public class Demo2 public static void main(String args) Scanner input =new Scanner(System.in); int b1,b2,max; System.out.pri

36、ntln(请输入一班比赛成绩); b1 = input.nextInt();,三元表达式,3.1.1,System.out.println(请输入二班比赛成绩); max = b1b2?b1:b2; System.out.println(优胜班的成绩是+max); 上面的代码中max = b1b2?b1:b2;就是一个三元表达式。三元表达式的语法规则是:关系或者逻辑表达式?成立时返回值:不成立时返回值,当b1b2成立时,将“:”前面的变量b1赋值给max;当b1b2不成立时,将“:”后面的变量b2赋值给max; 运行结果: 请输入一班比赛成绩 88 请输入二班比赛成绩 99 优胜班的成绩是99

37、,三元表达式,3.1.1,相比于if语句,三元表达式的代码看上去更优雅。下表是if语句与三元表达式编码形式的比较。,嵌套的if语句,3.1.2,if语句中包含了另外一个if语句就形成了if语句的嵌套。嵌套if语句的形式如下: if(布尔表达式) if(布尔表达式) ,嵌套的if语句,3.1.2,闰年的规律为:四年一闰,百年不闰,四百年再闰,其简单计算方法要满足如下两个条件: 1.能被4整除而不能被100整除(如2004年就是闰年,1800年就不是闰年); 2.能被400整除,如2000年是闰年;,代码示例: import java.util.Scanner; public class Task

38、2 public static void main(String args) Scanner scanner = new Scanner(System.in); System.out.println(请输入年份); int year = scanner.nextInt();,嵌套的if语句,3.1.2,if (year % 4 = 0) if (year % 100 = 0) if (year % 400 = 0) System.out.println(是闰年); else System.out.println(不是闰年); else System.out.println(是闰年); else

39、 System.out.println(不是闰年); ,嵌套的if语句,3.1.2,老兵带你分析代码: 1.上例代码中的3个if语句是嵌套关系,当外层if语句成立时,才能进入内层的if语句执行。 运行结果: 请输入年份 2018 不是闰年,并列的if语句,3.1.3,并列的if语句,3.1.3,代码示例: import java.util.Scanner; public class Task3 public static void main(String args) Scanner scanner = new Scanner(System.in); System.out.println(请输入

40、成绩); int score = scanner.nextInt(); if (score = 90) System.out.println(成绩为:A); else if (score = 80) System.out.println(成绩为:B); else if (score = 70) System.out.println(成绩为:C); else if (score = 60) System.out.println(成绩为:D); else System.out.println(成绩为:E); ,并列的if语句,3.1.3,老兵带你分析代码: 1.上例代码中的4个if语句是并列关系,

41、并列的多个if语句只能执行其中一个分支。 运行结果: 请输入成绩 78 成绩为:C,2,表达式运算符,switch分支结构,switch分支结构,3.2,当要从多个分支中选择一个分支去执行时,虽然可以使用并列的if语句,但是代码的可读性比较查。为此java提供了多分支选择语句switch语句。switch语句能够根据给定的表达式的值,从多个分支中选择一个分支来执行。 switch语句的格式如下: switch(表达式) case 常量1: 语句1; Break; case 常量2: 语句2; Break; default: 语句n; Break; ,switch分支结构,3.2,说明: 1.表

42、达式的数据类型可以是byte ,char ,short ,int ,enum,String。 2.break语句和default语句是可选项。 switch语句首先计算表达式的值,如果表达式的值和某个case后面的常量值相等,就执行该case子句中的语句序列,直到遇到break语句为止。如果某个case子句中没有break语句,一旦表达式的值与该case后面的常量相等,在执行完该case子句中的语句后,继续执行后续的case子句中的序列,直到遇到break语句为止。如果没有一个常量值与表达式的值相等,则执行default子句中的语句序列。如果没有default子句,switch语句不执行任何操

43、作。 从JDK1.7开始,switch语句表达式的数据类型开始支持String类型。在此之前仅支持byte ,char ,short ,int ,enum类型,不支持long、float、double类型。,switch分支结构,3.2,代码示例 import java.util.Scanner; public class Task4 public static void main(String args) Scanner scanner = new Scanner(System.in); System.out.println(请输入成绩); int score = scanner.nextI

44、nt(); int res = score / 10; switch(res),switch分支结构,3.2,代码示例 case 10: case 9: System.out.println(成绩为:A); break; case 8: System.out.println(成绩为:B); break; case 7: System.out.println(成绩为:C); break; case 6: System.out.println(成绩为:D); break; default: System.out.println(成绩为:E); ,switch分支结构,3.2,老兵带你分析代码: 1

45、.先输入了成绩,赋给变量score,然后score的值除以10后赋给变量res,最后通过switch语句判断res的值与哪个case后面的常量相等,如果相等输出相应的成绩级别,遇到break语句后退出swtich语句。 运行结果: 请输入成绩 90 成绩为:A if和switch都可以实现分支结构,两者的区别: 1.if语句可以判断某个范围的值,例如 score 60;而switch只能判断相等的情况; 2.if语句在判断时没有数据类型的限制,而switch只能判断byte ,char ,short ,int ,enum,String,1.计算长方形的面积,用户通过键盘输入长方形的宽与高,如果

46、输入的宽或高小于等于0,则提示用户输入错误,退出程序。 2.编写代码输入年份,计算出该年是12生肖中的哪一年。生肖的顺序是鼠,牛,虎,兔,龙,蛇,马,羊,猴,鸡,狗,猪。给定2005年是鸡年,从控制台输入一个年份,计算出该年份的生肖并输出。 3.输入三角形的三条边,计算三角形的周长,并判断输入的边长是否合理(必须为正数,任意两边和大于第三边)。 4.某超市进行促销活动,促销规则如下: 用户一次消费满50元,赠鸡蛋1个; 用户一次消费满100元,赠鸡蛋2个; 用户一次消费满200元,赠鸡蛋5个; 用户一次消费满500元,赠鸡蛋15个; 用户一次消费满1000元,赠鸡蛋50个; 请编写程序,输入用

47、户消费金额,输出赠品。,本章课后任务,.,.,.,谢谢聆听 THANK YOU,Java面向对象程序设计,第四章 循环结构,北京科学出版社 主编:李恒杰,CONTENTS,目录,1,while循环结构,while循环结构,4.1,while循环的语法如下: while(布尔表达式) 循环体; 说明: 1.布尔表达式表示循环体执行的条件,当条件为true时执行循环体。 2.循环体既可以是一条简单的语句,也可以是复合语句。 3.while语句的执行过程是:计算布尔表达式的值,如果其值是true,执行循环体;再计算布尔表达式的值,如果其值是true,再执行循环体,形成循环,直到布尔表达式的值变为fa

48、lse,结束循环。右图展示了while循环结构的流程。,while循环结构,4.1,代码示例: public class Task1 public static void main(String args) int i = 1,sum = 0; while(i=100) sum+=i; i+; System.out.println(1+2+3+.+100的和是+sum); ,while循环结构,4.1,老兵带你分析代码: 1.程序中定义int类型的变量i,初始化为1,定义int类型变量sum,用于存储累加的和。在while循环条件中,当i的值=100时,进入循环体,在循环体内部先将i的值累加到变量sum中,再将变量i自增。循环体执行结束后再次回到while的循环条件中,如果i的值=100再次进入循环体,否则结束循环。最后输出累加的和。 2.while循环的特点是先判断,再执行。 运行结果: 1+2+3+.+100的和是5050 老兵说: 1. 一个正常的循环是由四个部分构成的 (1)循环变量,循环变量用于控制循环次数,任务1中的变量i就是循环变量。 (2)循环条件,循环条件用来判断循环是否继续,任务1中的i

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁