Java面向对象程序设计第03章_运算符、表达式和语句

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

信息工程学院本科课程第3章运算符、表达式、语句主讲:赵建邦办公室:信息学院202E-mail:zhaojianbang@nwsuaf.edu.cn信息工程学院本科课程2本章主要内容3.1运算符与表达式3.2语句概述3.3执行流程控制if、switch、for、while、do-whilebreak、continue3.4数组与for3.5枚举类型与for、switch难点:循环语句枚举类型与for、switch信息工程学院本科课程3.1运算符与表达式算术运算符关系运算符逻辑运算符赋值运算符位运算符3信息工程学院本科课程3.1.1算术运算符单目算术操作符(Unary)+、-、++、--doublex=5,y;y=-x;++、--的操作对象必须是定点型或者浮点型变量doublex=5,y;y=x++;doublex=5,y=0,z;z=x+++y;//x=6,y=0,z=5为了减少混淆,单目+、-用括号括起来二目算术操作符(Arithmetic)*、/、%、+、-注意,整数除法会去掉小数位,而不是四舍五入4信息工程学院本科课程3.1.2算术混合运算的精度精度(低-高)byteshortchar如果表达式中有double型,表达式结果为double如果表达式中最高精度为float,则表达式结果为float如果表达式中最高精度为long,则表达式结果为long如果表达式中最高精度低于int,则表达式结果为int5intlongfloatdouble信息工程学院本科课程3.1.3关系运算符关系运算符是二目运算符,用来确定两个值的关系,运算结果是boolean型6信息工程学院本科课程3.1.4逻辑运算符&&(二目,逻辑与)||(二目,逻辑或)!(单目,逻辑非)操作元必须是boolean型数据,逻辑运算符可以连接关系表达式7也称为短路逻辑运算符信息工程学院本科课程3.1.5赋值运算符赋值运算符是二目运算符,左面的操作元必须是变量,不能是常量或表达式。注意:不要将赋值运算符“=”与等号逻辑运算符“==”混淆。赋值运算不仅要注意数据类型是否一致,还需要注意精度8信息工程学院本科课程3.1.6位运算符对两个整型数据实施位运算,即对两个整型数据对应的位进行运算得到一个新的整型数据。例3.1“按位与”运算‘&’“&=”“按位或”运算‘|’“|=”“按位非”运算‘~’(单目)“按位异或”运算‘^’“^=”如果表达式中最高精度为long,则表达式结果为long如果表达式中最高精度低于int,则表达式结果为int9信息工程学院本科课程Example3_1.java10信息工程学院本科课程3.1.6移位运算符移位操作符‘’“=”‘’“=”移位操作符可以作为乘法使用无符号右移‘’“=”使用“零扩展”:无论操作数是正还是负,都在高位插入0对char、byte、short进行移位,在移位之前会被转换成int类型,结果也为int类型;对long类型的数值进行处理,得到long结果11信息工程学院本科课程3.1.7instanceof运算符instanceof运算符是二目运算符,左面的操作元是一个对象;右面是一个类。当左面的对象是右面的类或子类创建的对象时,该运算符运算的结果是true,否则是false。12信息工程学院本科课程3.1.8运算符综述Java的表达式就是用运算符连接起来的符合Java规则的式子运算符的优先级决定了表达式中运算执行的先后顺序在编写程序时尽量的使用括号()来实现想要的运算次序,以免产生难以阅读或含糊不清的计算顺序运算符的结合性决定了并列的相同级别运算符的先后顺序13信息工程学院本科课程3.2语句概述方法调用语句表达式语句复合语句空语句控制语句package语句和import语句14信息工程学院本科课程3.3if条件分支语句if语句根据一个条件来控制程序执行的流程良好的编程习惯:不要省略“{”,“}”if-else语句同上,单条件分支语句if-elseif-else语句多条件分支语句15信息工程学院本科课程3.4switch开关语句switch语句是单条件多分支语句,语法:switch(表达式){case常量值1:若干个语句break;case常量值2:若干个语句break;...case常量值n:若干个语句break;default:若干语句}16注意点:1、switch表达式的值必须为byte、short、int、char、枚举类型等2、case后面的常量值与表达式的数值类型统一,且互不相同3、default可选4、switch表达式的值不能为long5、没有break的情况信息工程学院本科课程3.5循环语句for循环格式:for(表达式1;表达式2;表达式3){若干语句}17信息工程学院本科课程3.5循环语句while循环格式:while(表达式){若干语句}18信息工程学院本科课程3.5循环语句do-while循环循环体至少被执行一次格式:do{若干语句}while(表达式);19信息工程学院本科课程3.6break和continue相同点:都可以使用在循环体中break:在某次循环中执行了break,整个循环体结束,接着执行循环体外的语句continue:在某次循环中执行了continue,跳过本次循环体的后续语句,执行下一次循环例3.720信息工程学院本科课程3.7数组与for语句为了更好地遍历数组,Java增强了for语句的功能语法:for(声明循环变量:数组的名字){…}“对于循环变量一次取数组的每一个元素的值”注意,声明的循环变量必须和数组的类型相同21信息工程学院本科课程3.8枚举类型与for、switch枚举类型数组,然后使用forenumWeekDay{sun,mon,tue,wed,thu,fri,sat};WeekDaya[]=WeekDay.values();枚举类型的枚举名.values()可以返回一个数组!switch语句中表达式可以是枚举类型的变量,因此对应地,case后面的常量可以是枚举类型的常量22信息工程学院本科课程小结运算符与表达式算术运算符、关系运算符、逻辑运算符、位运算符等的操作对象以及精度转换问题语句if、if-else、if-elseif-elseswitchfor、while、do-whilebreak、continue数组、枚举类型与for、switch结合的新用法23信息工程学院本科课程上机作业1、输出1949-2010年的所有年份中的闰年A、能被4整除但不能被100整除B、能被400整除2、用数组输出6维以内的杨辉三角1111211331146411510105124信息工程学院本科课程谢谢!!!!25

1 / 25
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功