CNET中国旗舰网站

ZDNet China | CNET科技资讯网 | 政府采购 | 行业网站联盟





 
标题: [转贴] scjp试题解析三十六
mesum
超级会员
Rank: 4



UID 321006
精华 0
积分 1811
帖子 73
威望 722
ZD币 160 元
阅读权限 90
注册 2008-4-21
状态 离线
  楼主
发表于 2008-8-18 10:37  资料  个人空间  短消息  加为好友 
开发者在线

scjp试题解析三十六

qq:2535279

Use the operators "<<", ">>", which statements are true?
  A. 0000 0100 0000 0000 0000 0000 0000 0000<<5 gives
  1000 0000 0000 0000 0000 0000 0000 0000
  B. 0000 0100 0000 0000 0000 0000 0000 0000<<5 gives
  1111 1100 0000 0000 0000 0000 0000 0000
  C. 1100 0000 0000 0000 0000 0000 0000 0000>>5 gives
  1111 1110 0000 0000 0000 0000 0000 0000
  D. 1100 0000 0000 0000 0000 0000 0000 0000>>5 gives
  0000 0110 0000 0000 0000 0000 0000 0000
  翻译
  使用"<<"和 ">>"操作符的哪些陈述是对的。
  答案 A,C        www.javaedu.com.cn
  解析 Java的移位操作符一共有三种,分别是”>>”,”>>>”,”<<”,执行的操作分别是有符号右移,无符号右移,左移,有符号右移的意思是说移入的最高位和原最高符号位相同,无符号右移是移入位始终补零,左移时最低位始终补零,最高位被舍弃。移位操作符另一个非常值得注意的特点是其右操作数是取模运算的,意思是说对于一个int型数据而言,对它移位32位的结果是保持不变而非变成零,即:a>>32的结果是a而不是0,同理,对long型数是对右操作数取64的模,a>>64==a;还有一点需要注意的是移位操作符”>>>”只对int型和long型有效,对byte或者short的操作将导致自动类型转换,而且是带符号的。




顶部
 



当前时区 GMT+8, 现在时间是 2009-7-4 12:08

  Powered by Discuz! 5.5.0 © 2001-2007 Comsenz Inc.
Processed in 0.061840 second(s), 4/3 queries

清除 Cookies - 联系我们 - ZDNetChina中文社区 - 无图版