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

下载本文档

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

文档简介

第 章运算符 表达式和语句 3 1运算符与表达式3 2语句概述3 3控制语句3 4循环语句3 5break和continue语句3 6数组 3 1运算符与表达式 Java提供了丰富的运算符 如算术运算符 关系运算符符 逻辑运算符 位运算符等 本节将介绍大部分运算符 Java语言支持如下运算符 算术运算符 关系运算符 赋值运算符 扩展赋值运算符 字符串连接运算符 1 算术运算符与表达式 用算术符号和括号连接起来的符合java语法规则的式子 称为算术表达式 如x 2 y 30 3 y 5 加减运算符 加减运算符的结合方向是从左到右 加减运算符的优先级是4级 乘 除和求余运算符 运算符的结合方向是从左到右 乘除运算符的操作元是整型或浮点型数据 运算符的优先级是3级 算术混合运算的精度精度从 底 到 高 排列的顺序是 byteshortintlongfloatdoubleJava将按运算符两边的操作元的最高精度保留结果的精度 例如 5 2的结果是2 要想得到2 5 必须写成5 0 2或5 0f 2 自增 自减运算符 自增 自减运算符是单目运算符 可以放在操作元之前 也可以放在操作元之后 操作元必须是一个整型或浮点型变量 作用是使变量的值增1或减1 x x 表示在使用x之前 先使x的值加 减 1 x x 表示在使用x之后 使x的值加 减 1 publicclassTest publicstaticvoidmain Stringarg inti1 10 i2 20 inti i2 System out print i i System out println i2 i2 i i2 System out print i i System out println i2 i2 i i1 System out print i i System out println i1 i1 i i1 System out print i i System out println i1 i1 输出 i 20i2 21i 22i2 22i 9i1 9i 9i1 8 注意 在前时先运算再取值 在后时先取值再运算 4 关系运算符与关系表达式 关系运算符 8 x y 80 逻辑运算符与逻辑表达式 逻辑运算符包括 其中 为双目运算符 实现逻辑与 逻辑或 为单目运算符 实现逻辑非 逻辑运算符的操作元必须是boolean型数据或表达式 逻辑 和 都是短路运算符 6 赋值运算符与扩展赋值运算符 赋值运算符 赋值运算符是双目运算符 左面的操作元必须是变量 不能是常量或表达式 赋值运算符的优先级较低 是14级 结合方向右到左 赋值表达式的值就是 左面变量的值 注意不要将赋值运算符 与等号运算符 混淆 7 位运算符 按位与 是双目运算符 对两个整型数据a b按位进行运算 运算结果是一个整型数据c 运算法则是 如果a b两个数据对应位都是1 则c的该位是1 否则是0 按位或 是双目运算符 对两个整型数据a b按位进行运算 运算结果是一个整型数据c 运算法则是 如果a b两个数据对应位都是0 则c的该位是0 否则是1 按位取反 是单目运算符 对一个整型数据a按位进行运算 运算结果是一个整型数据c 运算法则是 如果a对应位都是0 则c的该位是1 否则是1 按位异或 是双目运算符 对两个整型数据a b按位进行运算 运算结果是一个整型数据c 运算法则是 如果a b两个数据对应位相同 则c的该位是0 否则是1 classExample3 1 publicstaticvoidmain Stringargs chara1 十 a2 点 a3 进 a4 攻 charsecret 8 a1 char a1 secret a2 char a2 secret a3 char a3 secret a4 char a4 secret System out println 密文 a1 a2 a3 a4 a1 char a1 secret a2 char a2 secret a3 char a3 secret a4 char a4 secret System out println 原文 a1 a2 a3 a4 8 instanceof运算符 该运算符是双目运算符 左面的操作元是一个对象 右面是一个类 当左面的对象是右面的类创建的对象时 该运算符运算的结果是true 否则是false classInstanceOfDemo publicstaticvoidmain Stringargs InstanceOfDemot newInstanceOfDemo if tinstanceofInstanceOfDemo System out println T是InstanceOfDemo的实例 else System out println T不是InstanceOfDemo的实例 9 字符串连接符 除用于算术加法运算外 还可用于对字符串进行连接操作intid 800 90 Strings hello world 运算符两侧的操作数中只要有一个是字符串 String 类型 系统会自动将另一个操作数转换为字符串然后再进行连接 intc 12 System out println c c 当进行打印的时候 无论任何类型都自动转换为字符串进行打印输出 10 三目条件运算符 三目条件运算符 语法格式 x y z其中x为boolean类型表达式 先计算x的值 若为true 则整个三目运算的结果为表达式y的值 否则整个运算结果为表达式z的值 举例 intscore 80 intx 100 Stringtype score0 1 x 0 0 1 System out println type type System out println flag flag 三元运算符 classTernaryOp publicstaticvoidmain Stringargs intsalary daysPresent 30 salary daysPresent 20 2000 3000 System out println 您本月薪资为 salary 11 运算符综述 Java的表达式就是用运算符连接起来的符合Java规则的式子 运算符的优先级决定了表达式中运算执行的先后顺序 例如 x y z相当于 x y z 没有必要去记忆运算符号的优先级别 在编写程序时可尽量的使用括号 运算符号来实现你想要的运算次序 以免产生难以阅读或含糊不清的计算顺序 运算符的结合性决定了并列相同级别的运算符的先后顺序 例如 加减的结合性是从左到右 8 5 3相当于 8 5 3 逻辑否运算符 的结合性是右到左 x相当于 x 3 2语句概述 Java里的语句可分为以下五类 1 方法调用语句2 表达式语句3 复合语句4 控制语句5 package语句和import语句 3 3控制语句 Java语言的控制语句有2种类型 即条件语句 和switch开关语句 1 条件控制语句 if语句的一般形式 if 表达式 若干语句 if else语句的一般形式 if 表达式 若干语句 else 若干语句 只有一句需要执行的语句时 可以省略 但是不推荐省略小心不要在if后面加 练习 判断一个成绩是属于哪个等级的 输出相应的等级 2 switch开关语句 switch语句是多分支的开关语句 它的一般格式定义如下 其中break语句是可选的 switch 表达式 case常量值1 若干个语句break case常量值2 若干个语句break case常量值n 若干个语句break default 若干语句 表达式必须为byte short int或char类型 常量值必须是与表达式类型兼容的特定的一个常量不允许有重复的case值 3 4循环语句 1 for循环语句for语句是java程序设计中最有用的循环语句之一 for语句的格式如下 for 表达式1 表达式2 表达式3 若干语句 流程控制 for循环 for循环 for inti 1 i 10 i action 示例 for inti 1 i 10 i System out println i i 2 while循环一般格式 while 表达式 若干语句 3 do while循环一般格式 do 若干语句 while 表达式 while循环 while booleantestexpr statementorblock 示例 intI 0 while I 10 System out println I I do while循环 do action while conditon 示例 inti 1 do System out println i i i while i 10 3 5break和continue语句 break和continue语句是指用关键break或continue加上分号构成的语句 例如 break 在循环体中可以使用break语句和continue语句 如果在某次循环中执行了break语句 那么整个循环语句就结束 如果在某次循环中执行了continue语句 那么本次循环就结束 即不再执行本次循环中循环体中continue语句后面的语句 而转入进行下一次循环 程序举例 publicstaticvoidmain String args inti 8 switch i case8 case3 case2 System out println C break case9 System out println D break default System out println error publicclassTest publicstaticvoidmain Stringargs intnum 0 i 1 while i 100 if i 3 0 System out print i num if num 5 break i 输出1 100内前5个可以被3整除的数 输出101 200内的质数 publicclassTest publicstaticvoidmain Stringargs for inti 101 i 200 i 2 booleanf true for intj 2 j i j if i j 0 f false break if f continue System out print i 1 不带标号的break语句和continue语句2 带标号的break语句和continue语句标号应该定义在某一个循环语句之前 紧靠在循环语句的前方 用来标志这个循环结构 在标号和循环之间置入任何语句都是不明智的行为 而在循环之前设置标号的唯一理由是 我们希望在其中嵌套另一个循环或者一个开关 break和continue关键字若随同标号使用 它们就会中断到存在标号的地方 求1到100的所有素数publiccalssprimenumber publicstaticvoidmain String args inti j System out println 1 outer for i 3 i 100 i for j 2 j int Math sqrt i j if i j 0 continueouter System out println i 作业 第三章的习题第3题 编写应用程序 求1 2 10 第4题 编写一个应用程序 求100以内的全部素数 第5题 分别用的do while和for循环计算1 1 1 1 2 1 3 1 4 前20项的和 补充 JAVA中的数组 数组可以看成是多个相同类型数据组合 对这些数据的统一管理 数组变量属引用类型 数组也可以看成是对象 数组中的每个元素相当于该对象的成员变量 数组中的元素可以是任何数据类型 包括基本类型和引用类型 一维数组的声明 一维数组的声明方式 typevar 或type var 例如 inta1 int a2 doubleb Person p1 Strings1 Java语言中声明数组时不

温馨提示

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

评论

0/150

提交评论