第3章 运算符表达式和控制流程优秀PPT.ppt

上传人:石*** 文档编号:74024000 上传时间:2023-02-24 格式:PPT 页数:26 大小:3.41MB
返回 下载 相关 举报
第3章 运算符表达式和控制流程优秀PPT.ppt_第1页
第1页 / 共26页
第3章 运算符表达式和控制流程优秀PPT.ppt_第2页
第2页 / 共26页
点击查看更多>>
资源描述

《第3章 运算符表达式和控制流程优秀PPT.ppt》由会员分享,可在线阅读,更多相关《第3章 运算符表达式和控制流程优秀PPT.ppt(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第3章 运算符表达式和控制流程现在学习的是第1页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院主要内容主要内容运算符和表达式1流程控制2标准输入/输出3现在学习的是第2页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院3.1 运算符和表达式 基本概念基本概念运算符:用于标记对数据执行某种运算的特定符号。操作数:参加运算的数据称为运算对象(操作数)。分类按运算符的功能,将运算符分为:算术运算符、关系运算符、逻

2、辑运算符、位运算符等按参与运算的操作数的个数,将运算符分为:单目运算符、双目运算符、三目运算符表达式:若干操作数(operand)和运算符(operator)按照约定规则构成的一个序列。现在学习的是第3页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院 算术运算符算术运算符加运算符+:连接两个字符串。例如,“abc”+12的结果为“abc12”;”abc”+1+2=?“abc”+(1+2)=?Java语言既可对整数取模,也可以对小数取模。例如,16.25=1.2char类型的数据可以进行算术运算,而b

3、oolean类型的数据不能进行算术运算。+(-)运算符的操作数必须是变量,不能是常量或表达式。+i 或者 i+(注意两者的区别)例3.1 自增自减运算符的使用。3.1 运算符和表达式现在学习的是第4页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院 关系运算符关系运算符 关系运算符用于判断两个操作数的等价性和大小关系,得到的结果为布尔类型,取值为true或false。常用于逻辑判断(if语句或循环)。例3.2 关系运算符的使用。逻辑运算符逻辑运算符 逻辑运算符可以对boolean类型数据进行逻辑上的“

4、与”、“或”、“非”、“异或”等运算,结果仍为boolean类型,通常用于程序的流程控制。逻辑运算符&(&)、|(|)、!注意:运算符(&、|)和运算符(&、|)的区别。利用&、|作运算时,运算符左右两边的表达式都会被执行,最后两表达式的结果再进行与、或运算;而利用&、|作逻辑运算时,如果只计算运算符左边的表达式即可确定与、或的结果,则右边的表达式将不会执行。例3.3 逻辑运算符的使用。3.1 运算符和表达式现在学习的是第5页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院 位运算符位运算符 位运算符

5、用来对整型(byte、short、int、long)或字符型(char)数据二进制位进行操作,结果为一个整数。(按位取反)格式:a 功能:将操作数a中的二进制位由1变0,由0变1。例如:int x=2;x?&(按位相与)格式:a&b功能:两个操作数的相应位都为1,则该位为1,否则为0。例如,int x=2,y=7;x&y=?3.1 运算符和表达式现在学习的是第6页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院|(按位相或)格式:a|b功能:两个操作数的相应位中有一个为1,则该位的结果为1。例如,in

6、t x=5,y=8;x|y=?(按位相异或)格式:a b功能:两个操作数的相应位相异,则该位的结果为1,否则为0。例如,int x=5,y=8;x y=?例3.4 位运算的使用。注意:运算符&、|、什么时候实施的是逻辑运算?什么时候实施的是位运算?3.1 运算符和表达式现在学习的是第7页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院(按位右移)格式:a b功能:将a右移b位,右端的低位被舍弃,左端高位补原来的符号位。例如,byte x6;x 2 =?(按位左移)格式:a b功能:将a左移b位,右端的

7、低位补0,左端的高位被舍弃。例如,byte x6;x(无符号右移)格式:a b功能:将a右移b位,右端的低位被舍弃,左端的高位补0。例如,byte x6;x 2 =?3.1 运算符和表达式现在学习的是第8页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院注意:移位运算时真正的移位位数不一定是指定的b位。当a为int型(或byte、short、char型)时,系统会先将b对32取模,得到的结果才是真正移位的位数,而当a为long型时,系统先将b对64取模,得到的结果作为真正的移位位数。例3.5 位运算的

8、综合应用。分析:方法getOneBit()可以返回参数num的第n-1位。public int getOneBit(int num,int n)int i=1 (n-1);3.1 运算符和表达式现在学习的是第9页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院 赋值运算符赋值运算符格式:变量=表达式double d=7.8f;/合法int a=78L;/非法int a=(int)78L;/合法复合的赋值运算符+=-=*=/=%=&=|=条件运算符条件运算符 格式:表达式1?表达式2:表达式3需注意:表

9、达式1应是boolean类型的表达式;表达式2和表达式3的类型要一致。不允许是常量或表达式 当赋值运算符两侧的类型不一致时,如果左侧变量的数据类型的表示范围更大,则把右侧的数据自动转换为与左侧相同的数据类型,然后赋给左侧变量,否则,需要使用强制类型转换运算符。3.1 运算符和表达式现在学习的是第10页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院例3.6 条件运算符的使用。分析:弹出输入对话框,接收用户输入:JOptionPane.showInputDialog(s)将数字的字符串表示形式转换为整数

10、:Integer.parseInt(s)result=(score=60)?及格:不及格System.out.println(result);3.1 运算符和表达式现在学习的是第11页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院 表达式表达式 表达式(expression)是由若干操作数(operand)和运算符(operator)按照约定规则构成的一个序列。运算符标明对操作数进行何种操作;操作数可以是变量、常量或有返回值的方法调用等其他的表达式。(a-b)/c+4 5=a a3&a10 10*m

11、ax(a,b)a=10 100如何正确计算表达式的值?运算符的优先级运算符的结合性例3.7 计算表达式的值3.1 运算符和表达式现在学习的是第12页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院 表达式中的数据类型转换表达式中的数据类型转换 自动类型转换 当不同类型的常量和变量在表达式中混合使用时,它们最终将被转换为同一类型,然后进行运算。为了保证精度,转换从表示数的范围较小的数据类型到表示数的范围较大的数据类型。(byte或short)和intint(byte或short或int)和longlon

12、g(byte或short或int或long)和floatfloat(byte或short或int或long或float)和doubledoublechar和intint 注意:箭头左边表示参与运算的数据类型,操作可以是算术运算、赋值运算等,箭头右边表示转换后进行运行的数据类型 例如:long longVar=12345;double doubleVar=1.2f;float f=23456434563L;doubleVar=doubleVar*(12+longVar);int a=doubleVar/100;/错,需使用强制类型转换注意:布尔类型不能与任何其它数据类型转换。3.1 运算符和表达

13、式现在学习的是第13页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院 强制类型转换格式:(目标数据类型)变量或表达式例如,(float)5/9*(f-32)注意:强制类型转换时,由于目标数据类型的取值范围小于待转换数据类型的取值范围,在转换过程中会出现截断,导致高位数据丢失或精度下降。例3.8将32位整数65366强制转换为byte型后,整数的高位被截掉,只剩下低8位,字节数据为86,导致数据丢失。例3.9 数值的类型转换。3.1 运算符和表达式现在学习的是第14页,共26页http:/221.19

14、2.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院3.2 流程控制三种基本的流程控制结构三种基本的流程控制结构 顺序结构分支结构:if-else语句、switch语句循环结构:while语句、do-while语句、for语句、break语句、continue语句、return语句break语句语句格式:break;或 break 标号;功能:带标号的break语句从多重循环体的内部跳出到标号所标志的那层循环,并从标号标志的那层循环后面的语句继续执行。定义在程序中循环语句前面的标识符,后跟一个冒号,标志要跳出的循环层次现在学习的是第15页

15、,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院注意:在多重循环中,不带标号的break语句将只退出它所在的内循环。例3.22 带标号的break语句的使用。outer:for(int i=0;i 5;i+)for(int j=0;j 3;j+)。if(j=1)/跳出outer标签所标识的循环。break outer;3.2 流程控制现在学习的是第16页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院 con

16、tinue语句语句格式:continue;或 continue 标号;功能:带标号的continue语句可从多重循环的内层循环跳到外层循环,执行标号所标识的循环的下一轮。例3.24 带标号的continue语句的使用。outer:for(int i=0;i 3;i+)for(int j=0;j 3;j+)。if(j=1)continue outer;3.2 流程控制现在学习的是第17页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院 return语句语句 return关键字并不是专门用于跳出循环的,而

17、是结束一个方法。一旦在循环体内执行到一个return语句,该方法将会结束,循环自然也随之结束。例3.25 使用return结束循环。for(int i=0;i 3;i+)System.out.println(i的值是+i);if(i=1)return;System.out.println(“return后的输出语句);3.2 流程控制现在学习的是第18页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院3.3 标准输入/输出 用户在程序运行过程中从外界传递数据到程序中(此为输入输入数据数据),并将处理结

18、果传递到程序外部,如显示到屏幕上或写出到文件中(此为输出数据输出数据)。什么是控制台什么是控制台 “控制台”(Console)就是由操作系统提供的一个字符界面窗口,用于实现系统与用户的交互接收用户输入的数据并显示输出结果。在控制台中运行的程序被称为控制台应用程序,也称字符界面应用程序。读取控制台输入读取控制台输入现在学习的是第19页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院3.3 标准输入/输出 java.util.Scanner类的功能并不仅限于控制台输入数据的读取,它的对象还可以关联到字符串

19、、文件或其他的数据源。构造方法public Scanner(InputStream source)例如,Scanner sc=new Scanner(System.in);public Sting next()读取下一个单词,以空格符或换行符作为分隔单词的标记。例如,String name=sc.next();public int nextInt()读取一个整数,如果输入的下一个单词不能解析为有效的整数(例如包含汉字等非数值字符),则出错。现在学习的是第20页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技

20、术学院3.3 标准输入/输出public double nextDouble()读取一个双精度浮点数,如果输入的下一个单词不能解析为有效的浮点数,则出错。public Boolean nextBoolean()读取一个布尔值,如果输入的下一个单词不能解析为有效的boolean值(true或false),则出错。例3.26 Scanner类的使用。import语句:导入java.util包中定义的Scanner类。String name=s.nextLine();int age=s.nextInt();double salary=s.nextDouble();现在学习的是第21页,共26页htt

21、p:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院上机实践2写出下面程序的输出结果,并上机验证。public class Example1 public static void main(String args)int a=20,b=50,c=100,d;a%=9;b/=7;c%=b;d=a+b+c;System.out.println(a=+a);System.out.println(b=+b);System.out.println(c=+c);System.out.println(d=+d);现在学习的是第22页,

22、共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院上机实践1请仔细阅读下面的程序段,说明以“*”标识的语句的含义,分析哪些语句不能得到正确结果,将程序补充完整上机验证。byte byte_n1;short short_n1=10;*short short_n2;int int_n1=3000000;*int int_n2,int_n3;long long_n1=400;*long long_n2,long_n3;byte_n1=short_n1;*byte_n1=(byte)short_n1;*现在学习的

23、是第23页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院上机实践short_n2=(short)int_n1;*int_n2=int_n1*short_n1;*int_n3=long_n1*short_n1;*long_n2=int_n1*2000;*long_n3=int_n1*2000L;*现在学习的是第24页,共26页http:/221.192.237.88:82http:/221.192.237.88:82河北软件职业技术学院河北软件职业技术学院上机实践3编写一个应用程序,读取用户输入的三个非0数据,判断并输出这三个值是否能构成一个三角形的三条边。4用switch语句编写一个完成两个整数四则算术运行的程序。5编写应用程序,求12-22+32-42+972-982+992-1002的值。6编写应用程序求1!+2!+20!的和并显示。同时输出1!、2!、3!的结果。现在学习的是第25页,共26页现在学习的是第26页,共26页

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

当前位置:首页 > 生活休闲 > 资格考试

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

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