java课程讲义(no.3)_2009(1)

上传人:xh****66 文档编号:61934979 上传时间:2018-12-15 格式:PPT 页数:16 大小:236.50KB
返回 下载 相关 举报
java课程讲义(no.3)_2009(1)_第1页
第1页 / 共16页
java课程讲义(no.3)_2009(1)_第2页
第2页 / 共16页
java课程讲义(no.3)_2009(1)_第3页
第3页 / 共16页
java课程讲义(no.3)_2009(1)_第4页
第4页 / 共16页
java课程讲义(no.3)_2009(1)_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《java课程讲义(no.3)_2009(1)》由会员分享,可在线阅读,更多相关《java课程讲义(no.3)_2009(1)(16页珍藏版)》请在金锄头文库上搜索。

1、Java面向对象程序设计,主讲教师:郑大庆 上海财经大学 信息管理与工程学院,第三讲 Java运算符和表达式,2,上海财经大学 信息管理与工程学院,与C不同之处: Java是强类型语言,类型限制比C严格,运算 符的操作对象的类型会受到更多限制。 Java不提供指针运算符,增加了对象操作符 instanceof,字符串运算符“+” 和零填充的右移等。,Java运算符与表达式,3,上海财经大学 信息管理与工程学院,Java运算符,4,上海财经大学 信息管理与工程学院,算术运算符,二元算术(双目)运算符 +,/,%(取余,可为浮点数);+号:可连接字符串 “He”+“llo”为“Hello ” 整型

2、、浮点进行混合运算时,不同类型的数据首先转换为同一类型,让后进行运算。,5,上海财经大学 信息管理与工程学院,算术运算符,一元算术运算符(自运算符) j+ j- +j -j 运算符的位置决定了自运算的顺序(在表达式运算之前或在表达式运算之后)。 a=3; b=5; c=(a+)*b; a=3; b=5; c=(+a)*b;,a=4 c=15,a=4 c=20,6,上海财经大学 信息管理与工程学院,关系运算符和逻辑运算符,关系运算符 对两个操作数大小关系的比较,结果是布尔量 ,=,=,!=,=(与=不同) 逻辑运算符 表示两个布尔量的逻辑关系,结果仍为布尔量 双目:(与、或) 不短路(非简洁)运

3、算符:&,| 短路(简洁)运算符:&,| 单目:!(否),7,上海财经大学 信息管理与工程学院,位运算符,一般运算是把运算对象作为一个整体处理,而位运算是把整型数运算对象拆开,以位(bit)作为运算对象 位运算符的操作数只能是整型或字符型。 不同长度的数据进行位运算,首先要转换为同一长度 当两个长度不同的数据进行位运算时(例如long型数据与int型数据),将两个运算分量的右端对齐进行位运算。如果短的数为正数,高位用0补满;如果短的数为负数,高位用1补满。如果短的为无符号整数,则高位总是用0补满。,8,上海财经大学 信息管理与工程学院,位运算符,位逻辑运算符:, &, |, (与逻辑运算符的区

4、分取决于操作数的类型,体现了多态性) 移位运算符 带符号右移:左侧空出位全用符号位填充 不带符号右移 :左侧空出位用0填充 ,其具体实现要取决于不同的系统对符号表达的规定) x 二进制表示 x 2 x 2 30 00011110 01111000 00000111 00000111 -17 11101111 10111100 11111011 00111011,9,上海财经大学 信息管理与工程学院,位运算符移位,1281 128 / 21 = 64(相当于除2取商) 2564 256 / 24 = 16 -2564 -256 / 24 = -16 128 1 128 * 21 = 256(相当

5、于乘2) 16 2 16 * 22 = 64 (比乘、除法实现速度快),10,上海财经大学 信息管理与工程学院,三目条件运算符,三目条件运算符(?:) D=表达式A ?表达式B :表达式C A为真,返回表达式B A为假,返回表达式C 总是返回B,C中的长类型 例: int x=5, y=8; long z=2L; long k=x3? y:z; /k=8L,11,上海财经大学 信息管理与工程学院,运算符,扩展赋值运算符 二元运算符=,a=b即a=ab(为+,-,*,/,%) a+=b a = a + b; 运算符的优先级 一般原则:算术运算符关系运算符逻辑运算符 括号最优先 注释 / 行注释

6、/* */ 块注释,12,上海财经大学 信息管理与工程学院,运算符的优先级表,13,上海财经大学 信息管理与工程学院,表达式语句,表达式是变量、常量及运算符的组合。 表达式既可单独组成语句,也可出现在条件测试、变量说明、方法调用的参数等场合,14,上海财经大学 信息管理与工程学院,public class RelationAndConditionTest3 public static void main( String args ) int x=3; int y=6; boolean w=true; boolean z = x0; boolean u = !w|x0; System.out.println(“z = “+z); System.out.println(“u = “+u); System.out.println(“v = “+v); ,表达式例:运算符的优先级,z =true u =false v =false,15,上海财经大学 信息管理与工程学院,表达式例:运算符的优先级,boolean z = x0; / / boolean u = !w|x0; / /,boolean z = x0; / /!优先级高于&。!w计算结果为false,&运算短路。 /false,16,上海财经大学 信息管理与工程学院,QUESTIONS & ANSWER,Thanks!,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号