赛迪网 > IT技术 Java > 技术动态
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

Java入门:java中不同类型的转换和提升

发布时间:2008.01.28 04:51     来源:赛迪网    作者:bear103613

byte转换为int时出现的问题是始料不及的,byte的范围0??255,但是转换为int的时候却出现了负值,这种突然的变化惹了很大的麻烦。当时心情急躁,匆匆忙忙试了几种方法通过后就继续项目了,但真正的原因在什么地方一直没能解决,成了心病。后来想起来曾经阅读过java的语言规范说明书,里面有提到这些内容,于是抽时间再回顾一下,希望能搞通这些东西。
在java语言中,转换可以分为七大类:

 一、Identity conversions(同类转换)。

       看起来没有什么用,但却是整个转换体系的基石。提示:boolean基本类型只能进行同类转换。

 二、Widening primitive conversions(基本类型扩宽转换)。

        以所占字节数为基准,单字节向多字节转换就是所谓的扩宽,比如1到2、2到4等。int到其他整数类型的转换、float到double是没有失真的,完全一致。但是整数到浮点数的转换虽然也是扩宽,但因为浮点数是用有效数字的方式进行表示的,转换的时候可能出现精度损失(float类型不能支持9位有效数字),如int i=1234567890;float pp = i - (float)i;pp不等于零。带符号int转换为其他整数类型的方法是对其数字的二位补码方式进行带符号扩展,char类型转换为int类型的方法是进行0扩展。提示:无论精度是否损失,扩宽转换都不能引发运行时错误。

 三、Narrowing primitive conversions(基本类型缩窄转换)。

        带符号的整数缩窄为其他整数类型时只保留低位的值,除了精度损失外还可能出出现符号改变。char缩窄为其他整数类型时也可能出现负值,尽管char是无符号数。

 四、Widening reference conversions(引用类型扩宽转换)。

        子类到父类。提示:数列也是引用类型。

 五、Narrowing reference conversions(引用类型缩窄转换)。

        父类到子类。

 六、String conversions(字符串转换)。

 七、Value set conversions(值域转换)。
        专指浮点数。
        转换发生在五种情况下,分别是Assignment conversion(赋值转换)、Method invocation conversion(方法激活时的转换)、Casting conversion(造型转换)、String conversion(字符串转换)、Numeric promotion(数值提升)。
         发现了一个有用的方法,数值用不同的进制表示可以用Long.toString(l,16);Integer,toString(i,8);可以任意使用。 
        (责任编辑:包春林)


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· J2EE综合--j2ee的一些基本问题解答 (01-25) · 为什么很多Java开发人员对JCP感觉失望 (01-25)
· J2EE综合:Java学习:EJB的专用术语解释 (01-25) · JSP/Servlet:J2EE开发环境配置个人总结 (01-25)
· JAVA学习入门 对初次接触者 相当的有用 (01-25) · 数据库相关--Hibernate的事务和并发 (01-25)
· 关于表现层框架Struts/Tapestry/JSF比较 (01-25) · 浅析Tomcat5配置Mysql JDBC数据库连接池 (01-25)
· Java 安全:讨论Ajax安全问题不容忽视 (01-25) · Java 安全:浅析java开发的程序的保护 (01-25)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
· 工信部“三定”公布 总编制731名设24司局
· 北京发电子商务监管意见 营利性网店须办照
· 直播 08中国城市信息化高峰论坛 案例点评
· 烽火网络校园解决方案 移民安置信息管理系统
  IT博客 ·曾剑秋·项立刚·Java学习·网管
  IT技术论坛 ·开发·网管·安全·数据库·系统