第四课:变量、关键字、类型及程序中逻辑控制内容摘要:
(续 ) 示例 : public void doComputation() { int x = (int)(() * 100)。 int y。 int z。 if (x 50) { y = 9。 } z = y + x。 // Possible use before initialization } 6 运算符的优先级 Java支持一元和二元运算符。 一元运算符对单一的操作数起作用,二元运算符对两个操作数起作用。 假如没有运算符优先级规则的限制,下面的表达式可能得出几种不同的结果。 x = 15 + 3 * 2 14 表 41按优先顺序列出了各种运算符。 7 表达式 位运算 Java编程语言支持整数数据类型的位运算,它们的运算符 ~、 amp。 、 ^和|分别表示位运算的 NOT(为求反)、位 AND、位 XOR和位 OR。 10110000 = ~01001111 00001101 = 00101101 amp。 01001111 01100010 = 00101101 ^ 01001111 01101111 = 00101101 | 01001111 7 表达式 (续一 ) 逻辑运算符 运算符 amp。 amp。 (定义为 AND)和 ||(定义为 OR)执行布尔逻辑表达式。 请看下面的例子: MyDate d = null。 if ((d != null) amp。 amp。 (() 31)) { // do something with d } 注意: int到 boolean不能自动转换。 int i = 1。 if ( i ) //generates a pile error if (i != 0) // Correct 7 表达式 (续二 ) 字符串连接 运算符 + 能够进行 String对象的链接并生成一个新的 String: String salutation = Dr.。 String name = Jack + Arthur。 String title = salutation + name。 最后一行的结果是: Dr. Jack Arthur 如果 +运算符中有一个自变量为 String对象,则其它自变量将被转换成 String。 所有对象都可被自动转换成 String,尽管这样做的结果可能是意义含糊的。 不是串的对象是通过使用 toString() 成员函数而转换成串的等价物的 7 表达式 (续三 ) 右移位运算符 和 Java编程语言提供了两种右移位运算符 运算符 进行算术或符号右移位。 移位的结果是第一个操作数被 2的幂来除,而指数的值是由第二个数给出的。 例如: 128 1 gives 128/2 1 = 64 256 4 gives 256/2 4 = 16 256 4 gives 256/2 4 = 16 逻辑或非符号右移位运算符 主要作用于位图,而不是一个值的算术意义;它总是将零置于最重要的位上。 例如: 1010 ... 2 gives 111010 ... 1010 ... 2 gives 001010 ...在移位的过程中, 运算符使符号位被拷贝。 * 7 表达式 (续四 ) 左移位运算符 () 运算符 执行一个左移位。 移位的结果是:第一个操作数乘以 2的幂,指数的值是由第二个数给出的。 例如: 128 1 gives 128*21 = 256 16 2 gives 16*22 =64 7 表达式 (续五 ) 类型转换 在赋值的信息可能丢失的地方,编译器需要程序员用类型转换( typecast)的方法确认赋值。 例如,它可以 挤压 一个 long值到一个 int变量中。 显式转型做法如下: long bigValue = 99L。 int squashed =( int) ( bigValue)。 在上述程序中,期待的目标类型被放置在圆括号中,并被当作表达式的前缀,该表达式必须被更改。 一般来讲,建议用圆括号将需要转型的全部表达式封闭。 否则,转型操作的优先级可能引起问题。 7 表达式 (续六 ) 升级和表达式的类型转换 当没有信息丢失时,变量可被自动升级为一个较长的形式 (如 :int至 long的升级 ) long bigval = 6。 // 6 is an int type, OK int smallval = 99L。 // 99L is a long, illegal double z =。 // is float, OK float z1 =。 // is double, illegal 一般来讲,如果变量类型至少和表达式类型一样大(位数相同),则你可认为表达式是赋值兼容的。 对 + 运算符来说,当两个操作数是原始数据类型时,其结果至少有一个 int,并且有一个通过提升操作数到结果类型、或通过提升结果至一个较宽类型操作数而计算的值,这可能会导致溢出或精度丢失。 例如: short a, b, c a = 1; b = 2; c = a + b; 上述程序会因为在操作 short之前提升每个 short至 int而出错。 然而,如果 c被声明为一个 int,或按如下操作进行类型转换: c = (short)(a + b)。 则上述代码将会成功通过。 实例分析 2 问题描述 在 TelCom公司中有几百名员工,他们有各自的姓名,部门; tom和 bob分别在管理部和开发部,编写代码实现该描述。 解决方案: 1. 问题分析 2. 声明类 3. 创建并初始化。第四课:变量、关键字、类型及程序中逻辑控制
相关推荐
2)绘制竖直构造线 在绘图工具条中单击 “ 构造线 ” 按钮 提示: Xline指定点或 [水平( H) /垂直( V) /角度( A) /二等分( B) /偏移( O) ]: V↓ 提示:指定通过点 3)绘制与水平线(或参照线)有一定角度的构造线 在绘图工具条中单击 “ 构造线 ” 按钮 提示: Xline指定点或 [水平( H) /垂直( V) /角度( A) /二等分( B) /偏移(
; 3. 孢子囊 化石蕨类 A. 刺石松 B. 星木属 C. 鳞木属 D. 封印木属 E. 芦木属 F. 小原始蕨 裸子植物的起源与演化 在上泥盆纪 约 4 亿年前出现 繁盛于中生代的三叠纪和侏罗纪 最早的裸子植物是原裸子植物,是介于蕨类植物和裸子植物之间的一种过渡类型,包括: 古蕨属、无脉蕨属等 重建的古蕨属植物 A. 重建的植株的外貌; B. 枝条; C. 生殖枝孢子囊内有大、小孢子之分
屋租赁管理办法 》 (建设部)第13条规定: “ 房屋租赁实行登记备案制度。 登记、变更、终止租赁合同的,当事人应当向房屋所在地市、县人民政府房地产管理部门登记备案。 ” 第五讲之第五部分 房屋租赁 制作者:吴一鸣 《 城市房屋租赁管理办法 》 (建设部)第 17条规定: “ 《 房屋租赁证 》 是租赁行为合法有效的凭证。 租用房屋从事生产、经营活动的,房屋租赁证作为经营场所合法的凭证。
大,还表现在哪些方面 ? 归纳 ( 1) 外形、图案、文字、年代:“开元”比“和同”早 88年。 ( 2) 政治制度、文字书法、社会风尚、都城建筑、铜钱样式、诗歌、菜肴、茶道、登高节等。 二、鉴真东渡 鉴真盲目航东海 一片精诚照太清 舍己为人传道义 唐风洋溢奈良城 鉴真东渡 日本奈良唐招提寺 从鉴真六次东渡中,你们能得出什么启示。 学习方式 日本派谴唐使和留学生到中国访问和学习 唐朝对日本