Java2实用教程第4版第3章运算符、表达式与语句.ppt

上传人:牧羊曲112 文档编号:6509238 上传时间:2023-11-07 格式:PPT 页数:34 大小:260.50KB
返回 下载 相关 举报
Java2实用教程第4版第3章运算符、表达式与语句.ppt_第1页
第1页 / 共34页
Java2实用教程第4版第3章运算符、表达式与语句.ppt_第2页
第2页 / 共34页
Java2实用教程第4版第3章运算符、表达式与语句.ppt_第3页
第3页 / 共34页
Java2实用教程第4版第3章运算符、表达式与语句.ppt_第4页
第4页 / 共34页
Java2实用教程第4版第3章运算符、表达式与语句.ppt_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《Java2实用教程第4版第3章运算符、表达式与语句.ppt》由会员分享,可在线阅读,更多相关《Java2实用教程第4版第3章运算符、表达式与语句.ppt(34页珍藏版)》请在三一办公上搜索。

1、第 1 页1 页1 页,注意:开始用功了!,第 1 页1 页2 页,Java2实用教程(第4版)第3章,配合例子源代码一起使用,Power point 制作:耿祥义 张跃平,运算符、表达式和语句,第 1 页1 页3 页,主要内容运算符与表达式语句概述if条件分支语句switch开关语句循环语句break和continue语句数组与for语句,导读,第 1 页1 页4 页,3.1 运算符与表达式,Java提供了丰富的运算符,如算术运算符、关系运算符、逻辑运算符、位运算符等。Java语言中的绝大多数运算符和C语言相同,基本语句,如条件分支语句、循环语句等也和C语言类似,因此,本章就主要知识点给予简

2、单的介绍。,第 1 页1 页5 页,3.1.1 算术运算符与算术表达式,1加减运算符:+,-加减运算符是二目运算符;加减运算符的结合方向是从左到右;加减运算符的操作元是整型或浮点型数据,加减运算符的优先级是4级。2乘、除和求余运算符:*,/,%以上运算符是二目运算符,结合方向是从左到右,乘、除和求余运算符的操作元是整型或浮点型数据。运算符的优先级是3级。3算术表达式 用算术符号和括号连接起来的符合java语法规则的式子,称为算术表达式。,第 1 页1 页6 页,3.1.2 自增,自减运算符,自增、自减运算符:+,-是单目运算符,可以放在操作元之前,也可以放在操作元之后。操作元必须是一个整型或浮

3、点型变量。作用是使变量的值增1或减1,如:+x(-x)表示在使用x之前,先使x的值增(减)1。x+(x-)表示在使用x之后,使x的值增(减)1。,第 1 页1 页7 页,3.1.3 算术混合运算的精度,精度从“低”到“高”排列的顺序是:byte short char int long float double Java在计算算术表达式的值时,使用下列计算精度规则:1如果表达式中有双精度浮点数(double型数据),则按双精度进行运算。2如果表达式中最高精度是单精度浮点数(float型数据),则按单精度进行运算。3如果表达式中最高精度是long型整数,则按long精度进行运算。4如果表达式中最高

4、精度低于int型整数,则按int精度进行运算。,第 1 页1 页8 页,3.1.4 关系运算符与关系表达式,关系运算符:,=,=,=,!=关系运算符是二目运算符,用来比较两个值的关系。关系运算符的运算结果是boolean型,当运算符对应的关系成立时,运算结果是true,否则是false。,第 1 页1 页9 页,3.1.5 逻辑运算符与逻辑表达式,逻辑运算符包括&,|,!其中&、|为二目运算符,实现逻辑与、逻辑或;!为单目运算符,实现逻辑非。逻辑运算符的操作元必须是boolean型数据,逻辑运算符可以用来连接关系表达式。,第 1 页1 页10 页,3.1.6 赋值运算符与赋值表达式,赋值运算符

5、:=赋值运算符是二目运算符,左面的操作元必须是变量,不能是常量或表达式。赋值运算符的优先级较低,是14级,结合方向右到左。赋值表达式的值就是“=”左面变量的值。注意:不要将赋值运算符“=”与等号逻辑运算符“=”混淆。,第 1 页1 页11 页,3.1.7 位运算符,对两个整型数据实施位运算,即对两个整型数据对应的位进行运算得到一个新的整型数据。1“按位与”运算“按位与”运算符“&”是双目运算符。2“按位或”运算“按位或”运算符:“|”是二目运算符。3“按位非”运算“按位非”运算符:“”是单目运算符。4“按位异或”运算“按位异或”运算符:“”是二目运算符。注意:参与运算的是两个整型数据、结果也是

6、整型数据。,第 1 页1 页12 页,在下面的例子1中,利用“异或”运算的性质,对几个字符进行加密并输出密文,然后再解密,运行效果如图3.1。,例子1,第 1 页1 页13 页,3.1.8 instanceof 运算符,instanceof 运算符是二目运算符,左面的操作元是一个对象;右面是一个类。当左面的对象是右面的类或子类创建的对象时,该运算符运算的结果是true,否则是false。,第 1 页1 页14 页,3.1.9 运算符综述,Java的表达式就是用运算符连接起来的符合Java规则的式子。运算符的优先级决定了表达式中运算执行的先后顺序。在编写程序时尽量的使用括号()运算符号来实现想要

7、的运算次序,以免产生难以阅读或含糊不清的计算顺序。运算符的结合性决定了并列的相同级别运算符的先后顺序。,第 1 页1 页15 页,3.2 语句概述,Java里的语句可分为以下六类。1方法调用语句。如:(Hello);2表达式语句 表示式尾加上分号。比如赋值语句:x=23;3复合语句 可以用 把一些语句括起来构成复合语句,如:z=123+x;System.out.println(How are you);4空语句。一个分号也是一条语句,称做空语句。5控制语句。控制语句分为条件分支语句、开关语句和循环语句。6package语句和 import语句。它们和类、对象有关,将在第4章讲解。,第 1 页1

8、 页16 页,3.3 if条件分支语句,条件分支语句按着语法格式可细分为三种形式,if语句 if-else语句 if-else if-else if-else 语句,第 1 页1 页17 页,3.3.1 if语句,if语句是单条件分支语句,即根据一个条件来控制程序执行的流程(如图3.2)。if 语句的语法格式:if(表达式)若干语句,第 1 页1 页18 页,例子2将变量a,b,c内存中的数值按大小顺序进行互换(从小到大排列)。,public class Example3_2 public static void main(String args)int a=9,b=5,c=7,t=0;if(

9、ba)t=a;a=b;b=t;if(ca)t=a;a=c;c=t;if(cb)t=b;b=c;c=t;System.out.println(a=+a+,b=+b+,c=+c);,例子2,第 1 页1 页19 页,3.3.2 if-else 语句,if-else 语句是双条件分支语句,即根据一个条件来控制程序执行的流程。if-else 语句的语法格式:,if(表达式)若干语句 else 若干语句,第 1 页1 页20 页,例子3中有两条if-else语句,其作用是根据成绩输出相应的信息,运行效果如图3.4。,例子3,第 1 页1 页21 页,3.3.3 if-else if-else 语句,if

10、-else if-else 语句是多条件分支语句,即根据多个条件来控制程序执行的流程。if-else if-else语句的语法格式:,if(表达式)若干语句 else if(表达式)若干语句 else 若干语句,第 1 页1 页22 页,3.4 switch开关语句,switch 语句是单条件多分支的开关语句,它的一般格式定义如下(其中break语句是可选的):switch(表达式)case 常量值1:若干个语句 break;case 常量值2:若干个语句 break;.case 常量值n:若干个语句 break;default:若干语句,第 1 页1 页23 页,例子4使用了switch语句

11、判断用户从键盘输入的正整数是否为中奖号码。,例子4,import java.util.Scanner;public class Example3_4 public static void main(String args)int number=0;(输入正整数(回车确定);Scanner reader=new Scanner(System.in);number=reader.nextInt();switch(number)case 9:case 131:case 12:System.out.println(number+是三等奖);break;case 209:case 596:case 27

12、:System.out.println(number+是二等奖);break;case 875:case 316:case 59:System.out.println(number+是一等奖);break;default:System.out.println(number+未中奖);,第 1 页1 页24 页,3.5 循环语句 3.5.1 for循环语句,for语句的语法格式:for(表达式1;表达式2;表达式3)若干语句 for语句的执行规则是:(1)计算“表达式1”,完成必要的初始化工作。(2)判断“表达式2”的值,若“表达式2”的值为true,则进行(3),否则进行(4)。(3)执行循环

13、体,然后计算“表达式3”,以便改变循环条件,进行(2)。(4)结束for语句的执行。,第 1 页1 页25 页,例子5计算8+88+888+8888 的前12项和,例子5,public class Example3_5 public static void main(String args)long sum=0,a=8,item=a,n=12,I=1;for(i=1;i=n;i+)sum=sum+item;item=item*10+a;System.out.println(sum);,第 1 页1 页26 页,3.5.2 while 循环,while语句的语法格式:while(表达式)若干语句

14、 while语句的执行规则是:(1)计算表达式的值,如果该值是true时,就进行(2),否则执行(3)。(2)执行循环体,再进行(1)。(3)结束while语句的执行。,第 1 页1 页27 页,3.5.3 do-while循环,do-while语句的语法格式:do 若干语句 while(表达式);do-while语句的执行规则是:(1)执行循环体,再进行(2)。(2)计算表达式的值,如果该值是true时,就进行(1),否则执行(3)。(3)结束while语句的执行。,第 1 页1 页28 页,例子6用while语句计算1+1/2!+1/3!+1/4!的前20项,例子6,public clas

15、s Example3_6 public static void main(String args)double sum=0,item=1;int i=1,n=20;while(i=n)sum=sum+item;i=i+1;item=item*(1.0/i);System.out.println(sum=+sum);,第 1 页1 页29 页,3.6 break和continue语句,break和continue语句是用关键break或continue加上分号构成的语句。在循环体中可以使用break语句和continue语句。如果在某次循环中执行了break语句,那么整个循环语句就结束。如果在某

16、次循环中执行了continue语句,那么本次循环就结束,即不再执行本次循环中循环体中continue语句后面的语句,而转入进行下一次循环。,第 1 页1 页30 页,例子7使用了continue和break语句 计算1+3+5输出100内的素数.,例子7,public class Example3_7 public static void main(String args)int sum=0,i,j;for(i=1;ij/2)System.out.println(+j+是素数);,第 1 页1 页31 页,3.7 for语句与数组,JDK1.5后,对for语句的功能给予扩充、增强,以便更好地遍

17、历数组。语法格式如下:for(声明循环变量:数组的名字)其中,声明的循环变量的类型必须和数组的类型相同。这种形式的for语句类似自然语言中的“for each”语句,为了便于理解上述for语句,可以将这种形式的for语句中翻译成“对于循环变量依次取数组的每一个元素的值”。,第 1 页1 页32 页,例子8分别使用for语句的传统方式和改进方式遍历数组。,例子8,public class Example3_8 public static void main(String args)int a=1,2,3,4;char b=a,b,c,d;for(int n=0;na.length;n+)/传统方

18、式 System.out.println(an);for(int n=0;nb.length;n+)/传统方式 System.out.println(bn);for(int i:a)/循环变量i依次取数组a的每一个元素的值(改进方式)System.out.println(i);for(char ch:b)/循环变量ch依次取数组b的每一个元素的值(改进方式)System.out.println(ch);,第 1 页1 页33 页,3.8 应用举例,例子9中,用户在键盘依次输入若干个数字,每输入一个数字都需要按回车键确认,最后在键盘输入一个非数字字符串结束整个输入操作过程。程序将计算出这些数的和以及平均值。效果如图3.9所示。在从键盘输入数据时,经常让reader对象先调用hasNextXXX()方法等待用户在键盘输入数据,然后再调用nextXXX()方法获取用户输入的数据。,例子9,第 1 页1 页34 页,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号