java中运算符、表达式与语句.ppt_第1页
java中运算符、表达式与语句.ppt_第2页
java中运算符、表达式与语句.ppt_第3页
java中运算符、表达式与语句.ppt_第4页
java中运算符、表达式与语句.ppt_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

2019/11/19,1,第3章运算符、表达式与语句,本章导读算术运算符和算术表达式关系运算符与关系表达式逻辑运算符与逻辑表达式赋值运算符与赋值表达式移位运算符位运算符和条件运算符instanceof运算符一般表达式语句概述分支语句、循环语句和跳转语句,2019/11/19,2,3.1算术运算符和算术表达式,(1)加减运算符加减运算的运算符号分别为+和,是双目运算符。加减运算的结合性是从左到右。加减运算的操作元是整型或浮点型数据,加减运算符的优先级是4级。(2)乘、除和求余运算符乘、除和求余运算的运算符号为*、/、%,都是双目运算符。*、/、%运算符的结合性是从左到右,例如:2*3/8,先计算2*3,然后再将得到的结果除以8。乘、除和求余运算的操作元是整型或浮点型数据。*、/、%运算符的优先级是3级。,2019/11/19,3,(3)自增、自减运算符,自增、自减运算的运算符号为+、-,都是单目运算符,运算符的优先级是2级。运算符可以放在操作元之前,也可以放在操作元之后,但操作元必须是一个整型或浮点型变量(不能是常量或表达式)。运算符的作用是使变量的值增1或减1,如:+x,-x表示在使用x之前,先使x的值加(减)1。x+,x-表示在使用x之后,使x的值加(减)1。粗略地看,+x和x+的作用相当于x=x+1。但+x和x+的不同之处在于,+x是先执行x=x+1再使用x的值,而x+是先使用x的值再执行x=x+1。如果x的原值是5,则:对于y=+x;y的值为6。对于y=x+;y的值为5,然后x的值变为6。,2019/11/19,4,(4)算术表达式,用算术符号和操作元连接起来的符合Java语法规则的式子,称为算术表达式。如x+2*y-30+3*(y+5)-12+n+(-n)(5)算术混合运算的精度精度从“低”到“高”排列的顺序是:byteshortintlongfloatdoubleJava将按运算符两边的操作元的最高精度保留结果的精度,例如:5/2的结果是2,要想得到2.5,必须写成5.0/2或5.0f/2。char型数据和整型数据运算结果的精度是int。例如:bytek=18;那么H+k;的结果是int型,因此下列写法是不正确的,charch=H+k;应当写成:charch=(char)(H+k);,2019/11/19,5,3.2关系运算符与关系表达式,关系运算符用来比较两个值的关系,关系运算符的运算结果是boolean型数据,当运算符对应的关系成立时,运算结果是true,否则是false。(1)大小关系运算符大小关系运算的符号分别是、=、1的结果是true。大小关系运算符的级别是6级。(2)等与不等关系等与不等关系运算的符号分别是=和!=,都是双目运算符。运算符的级别是7级。(3)关系表达式结果为数值型的变量或表达式可以通过关系运算符形成关系表达式。例如,2418,(x+y+z)30+x等。,2019/11/19,6,3.3逻辑运算符与逻辑表达式,逻辑运算用来实现boolean型数据的逻辑“与”、“或”和“非”运算,运算结果是boolean型数据。(1)逻辑“与”和逻辑“或”逻辑“与”和逻辑“或”运算的符号是(2)表达式语句一个表达式的最后加上一个分号就构成了一个语句,称作表达式语句。分号是语句不可缺少的部分。例如,赋值语句:x=23;(3)复合语句可以用“”和“”把一些语句括起来构成复合语句,一个复合语句也称作一个代码块。例如,z=23+x;System.out.println(hello);(4)控制语句控制语句包括:条件分支语句、循环语句和跳转语句。(5)package语句和import语句package语句和import语句与类、对象有关,将在第4章讲解。,2019/11/19,18,3.11分支语句,1条件分支语句(1)if-else语句.if-else语句是Java中的一条语句,由一个“if”、“else”和两个复合语句按一定格式构成,if-else语句的格式如下:if(表达式)若干语句else若干语句一条if-else语句的作用是根据不同的条件产生不同的操作,执行法则如下:if后面()内的表达式的值必须是boolean型的。如果表达式的值为true,则执行紧跟着的复合语句;如果表达式的值为false,则执行else后面的复合语句。,2019/11/19,19,(2)多条件if-elseif-else语句,程序有时需要根据多条件来选择某一操作,这时就可以使用if-elseif-else语句。if-elseif-else语句是Java中的一条语句,由一个“if”、若干个“elseif”、一个“else”与若干个复合语句按一定规则构成。语句的格式如下:if(表达式1)若干语句elseif(表达式2)若干语句elseif(表达式n)若干语句else若干语句,2019/11/19,20,if-elseif-else语句的执行法则如下:,有时为了编程的需要,复合语句中可以没有任何语句。一条if-elseif-else语句的作用是根据不同的条件产生不同的操作,执行法则如下:if以及elseif后面()内的表达式的值必须是boolean型的。该语句执行时,首先计算if后括号中的表达式的值,如果该表达式的值为true,则执行紧跟着的复合语句,然后就结束整个语句的执行;如果if后括号中的表达式的值为false,就依次再计算后面的elseif的表达式的值,直到出现某个表达式的值为true为止,然后执行该elseif后面的复合语句,结束整个语句的执行。如果所有的表达式的值都是false,就执行else后面复合语句,结束整个语句的执行。在下面的例子3中,用户在键盘输入3个数,程序判断这3个数能构成什么形状的三角形。运行结果见图3-3。,2019/11/19,21,2switch开关语句,switch语句是多分支的开关语句,它的一般格式定义如下:switch(表达式)case常量值1:若干个语句break;case常量值2:若干个语句break;case常量值n:若干个语句break;default:若干语句,switch语句中表达式的值必须是整型或字符型;常量值1到常量值n必须也是整型或字符型。switch语句首先计算表达式的值,如果表达式的值和某个case后面的常量值相同,就执行该case里的若干个语句,直到碰到break语句为止。若没有任何常量值与表达式的值相同,则执行default后面的若干个语句。其中default是可有可无的,如果它不存在,并且所有的常量值都和表达式的值不相同,那么switch语句就不会进行任何处理。需要注意的是,在同一个switch语句中,case后的常量值必须互不相同。下面的例子4使用了switch语句,用户在键盘输入一个代表月份的整数,程序输出是该月是在年度的第几季度。运行结果见图3-4.,2019/11/19,22,例子3-4效果图,2019/11/19,23,3.12循环语句,1while循环while语句的一般格式:while(表达式)若干语句while语句由关键字while、括号中的一个求值为boolean型数据的表达式和一个复合语句组成,其中的复合语句称作循环体,循环体只有一条语句时,大括号“”可以省略,但最好不要省略,以便增加程序的可读性。表达式称作循环条件。while语句的执行规则是:(1)计算表达式的值,如果该值是true时,就进行(2),否则进行(3)。(2)执行循环体,再进行(1)(3)结束while语句的执行while语句执行规则如流程图3-5所示。,2019/11/19,24,while语句执行规则流程图3-5dowhile语句执行规则流程图3-6,2019/11/19,25,2do-while循环,一般格式:do若干语句while(表达式);do-while循环和while循环的区别是do-while的循环体至少被执行一次,如图3.6所示。下面的例子5分别用while和do-while循环计算常数e的近似值e=1+1/1+1/2!+1/3!+。,2019/11/19,26,3for循环,for语句的一般格式:for(表达式1;表达式2;表达式3)若干语句for语句由关键字for、括号中用分号分割的3个表达式,以及一个复合语句组成,其中的“表达式2”必须是一个求值为boolean型数据的表达式,而复合语句称作循环体。for语句的执行规则是(流程图3-8):(1)计算“表达式1”,完成必要的初始化工作(2)判断“表达式2”的值,若“表达式2”的值为true,则进行(3),否则进行(4)。(3)执行循环体,然后计算“表达式3”,以便改变循环条件,进行(2)。(4)结束for语句的执行.一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如,6=1+2+3。下面的例子6使用for循环计算出1000内的全部完数.效果如图3-9.,2019/11/19,27,for语句执行规则流程图3-8,2019/11/19,28,例子3-6效果图,2019/11/19,29,3.13跳转语句,跳转语句是指用关键break或continue加上

温馨提示

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

评论

0/150

提交评论