第3章运算符、表达式与语句_第1页
第3章运算符、表达式与语句_第2页
第3章运算符、表达式与语句_第3页
第3章运算符、表达式与语句_第4页
第3章运算符、表达式与语句_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

复习Java编写程序的三步:编辑:UltraEdit编译:javac运行:javaJava环境配置简单的DOS命令练习写一个Java程序,显示两个数据的值和交换后的数值。第3章运算符、表达式与语句本章导读1.算术运算符和算术表达式2.关系运算符与关系表达式3.逻辑运算符与逻辑表达式4.赋值运算符与赋值表达式5.移位运算符6.位运算符7.条件运算符8.instanceof运算符9.一般表达式10.语句概述11.分支语句12.循环语句13.跳转语句3.1算术运算符和算术表达式加减运算符+扩展:字串连接,显示时不同类型连接乘、除和求余运算符乘、除和求余运算的运算符号为*、/、%,都是双目运算符。自增、自减运算符

++、--,都是单目运算符算术表达式算术混合运算的精度精度从“低”到“高”排列的顺序是:

byteshortintlongfloatdoubleJava按运算符两边的操作元的最高精度保留结果的精度。char型数据和整型数据运算结果的精度是int。5/2的结果是2,要想得到2.5,必须写成5.0/2或5.0f/2bytek=18;‘H’+k的结果是int型charch=’H’+k;Xcharch=(char)(’H’+k);√3.2关系运算符与关系表达式关系运算符的运算结果是boolean型数据。(1)大小关系运算符大小关系运算的符号分别是:>、>=、<、<=(2)等与不等关系等与不等关系运算的符号分别是:“==”、“!=”

注意:不要将赋值运算符“=”与等号运算符“==”混淆。(3)关系表达式结果为数值型的变量或表达式可以通过关系运算符形成关系表达式。例如,24>18,(x+y+z)>30+x等。3.3逻辑运算符与逻辑表达式

逻辑运算用来实现boolean型数据的逻辑“与”、“或”和“非”运算,运算结果是boolean型数据。

(1)逻辑“与”和逻辑“或”逻辑“与”和逻辑“或”运算的符号是:&&、||

(2)逻辑“非”逻辑“非”运算的符号是:!

(3)逻辑表达式结果为boolean型的变量或表达式可以通过逻辑运算符形成逻辑表达式。例如,24>18&&4<0x!=0||y!=03.4赋值运算符与赋值表达式

赋值运算符:=。注意:不要将赋值运算符“=”与等号运算符“==”混淆。3.5移位运算符

位运算符用来对二进制位进行操作,分为左移位操作和右移位操作。

(1)左移位运算符左移位运算的符号为:<<a<<n运算的结果是通过将a的所有位都左移n位,每左移一个位,左边的高阶位上的0或1被移出丢弃,并用0填充右边的低位。(2)右移位运算符右移位运算的符号为:>>a>>n运算的结果是通过将a的所有位都右移n位,每右移一个位,右边的低阶位被移出丢弃,并用0或1填充左边的高位,a是正数用0填充,负数时用1填充。3.6位运算符“按位与”运算符“&”“按位或”运算符“|”“按位非”运算符“~”“按位异或”运算符“^”3.7条件运算符

条件运算符是一个3目运算符,它的符号是:“?:”用法:op1?op2:op312>8?100:200的结果是10012<8?100:200的结果是2003.8instanceof运算符判断对象是否属于由某个类声明。该运算符是双目运算符,左面操作元是对象,右面类。当对象是类创建的对象时,该运算的结果是true,否则是false。classA{}classBextendsA{}classE2_1{ publicstaticvoidmain(String[]args) { Aa=newA(); Bb=newB(); booleant=binstanceofB; System.out.println(t); t=ainstanceofA; System.out.println(t); t=ainstanceofB; System.out.println(t); }}3.9一般表达式用运算符及操作元连接起来的符合Java规则的式子。3.10语句概述Java里的语句可分为以下5类:方法调用语句对象调用类中的方法产生行为,如:reader.nextInt();表达式语句表达式的最后加上一个分号就构成语句。分号是语句不可缺少的部分。如,赋值语句:x=23;复合语句用“{”和“}”把一些语句括起来构成复合语句,一个复合语句也称作一个代码块控制语句条件分支语句、循环语句和跳转语句。package语句和import语句

{z=23+x;System.out.println("hello");}注意:复合语句中变量的作用范围3.11分支语句条件分支语句(1)if-else语句

if(表达式){

若干语句

}else{

若干语句

}if(x>0){y=10;z=20;}elsey=100;条件分支语句

(2)多条件if-elseif-else语句

if(表达式1){

若干语句

}elseif(表达式2){

若干语句}……elseif(表达式n){

若干语句}else{

若干语句}if(x>=90){y=“优秀”}elseif(x>=80)y=“良好”;elseif(x>=70)y=“中等”;elseif(x>=60)y=“及格”;elsey=“不及格”;switch开关语句switch(表达式){case常量值1:若干个语句

break;

case常量值2:若干个语句

break;

………case常量值n:若干个语句

break;

default:若干语句

}条件分支语句注意:switch语句计算表达式的值,如果表达式的值和某个case后面的常量值相同,就执行该case里的若干个语句。如何没有遇到break语句,继续执行后面case所指示的语句。若没有任何常量值与表达式的值相同,则执行default后面的若干个语句。其中default可有可无。在同一个switch语句中,case后的常量值必须互不相同。switch语句中表达式的值必须是整型或字符型。

例:使用了switch语句,用户在键盘输入一个代表月份的整数,程序输出是该月是在年度的第几季度。importjava.util.*;publicclassExample3_4{publicstaticvoidmain(Stringargs[]){Scannerreader=newScanner(System.in);System.out.println("输入一个月份:");intn=reader.nextInt();switch(n){case1:case2:case3:System.out.printf("%d月属于第一季度",n);break;

case4:case5:case6:System.out.printf("%d月属于第二季度",n);break;case7:case8:case9:System.out.printf("%d月属于第三季度",n);break;case10:case11:case12:System.out.printf("%d月属于第四季度",n);break;default:System.out.printf("%d不代表月份",n);}}}3.12循环语句1.while循环

while语句的一般格式:

while(表达式){

若干语句

}while语句的执行过程:(1)计算表达式的值,如果该值是true时,就进行(2),否则进行(3)。(2)执行循环体,再进行(1)(3)结束while语句的执行表达式

循环体truefalse图3.5while循环语句2.do-while循环

一般格式:

do{

若干语句

}while(表达式);

区别:do-while的循环体至少被执行一次。

循环体表达式truefalse图3.6do-while循环语句练习:输入若干个整数,以0结束,统计正整数的个数。分析:实现:例:分别用while和do-while循环计算常数e的近似值:e=1+1/1+1/2!+1/3!+…1/n!(近似到n=1000)

doublesum=0,item=1;inti=1;while(i<=1000){sum=sum+item;i++;item=item*(1.0/i);}sum=sum+1;System.out.println(sum);doublesum=0,item=1;inti=1;do{sum=sum+item;i++;item=item*(1.0/i);}while(i<=1000);sum=sum+1;System.out.println(sum);

3.for循环

for语句的一般格式:

for(表达式1;表达式2;表达式3){

语句块

}

for语句的执行过程:计算“表达式1”,初始化。判断“表达式2”的值,若“表达式2”的值为true,则进行(3),否则进行(4)。执行循环体,然后计算“表达式3”,改变循环条件,进行(2)。结束for语句的执行。一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如,6=1+2+3。使用for循环计算出1000内的全部完数intsum,i,j;for(i=1;i<=1000;i++){for(j=1,sum=0;j<=i/2;j++){ if(i%j==0){ sum=sum+j; }}if(sum==i){ System.out.printf("%8d是一个完数%n",i);}}练习:输入10个整数,统计正整数的个数。分析:实现:3.13跳转语句跳转语句是用关键字break或continue加上分号构成的语句。如:break;在循环体的执行中执行了break语句,那么整个循环语句结束。在某次循环体

温馨提示

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

最新文档

评论

0/150

提交评论