xuhanchn
2016-10-19 14:03
采纳率: 92.7%
浏览 749
已采纳

关于JAVA类型转换的疑问

转换成整形:
Integer.valueOf()
parseInt
二者有什么区别?什么时候采用哪一个

转换成字符串:
String.valueOf()
toString()
(String)
三者的区别以及选用时机?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • blownewbee 2016-10-19 14:10
    已采纳

    http://blog.csdn.net/xiancaifu/article/details/7388579

    toString(),任何类型都支持,String.valueOf,固定的几个类型支持,强转,只有实际为String类型才能转。

    点赞 打赏 评论
  • 当作看不见 2016-10-19 14:12

    Integer.valueOf()//61654dfgdf,可以转化为61654可以转化包含非数字的字符串
    parseInt//只能转纯数字的字符串
    String.valueOf()//对象,
    toString()//数组,集合
    (String)//基础类型

    点赞 打赏 评论
  • toString() 使用时注意空指针异常
    String.valueOf() 内部实现了toString() obj==null?"null":obj.toString()
    String 字符串类 一般对象在强制转化会用上

    点赞 打赏 评论
  • xuhanchn 2016-11-15 08:45

    总结下:
    提这个问题实际是对valueOf() parseInt() toString() 以及强转的作用不清晰。

    1. 字符串和数值类型的之间的转换正规来说是用valueOf()和parseInt()这两种方法。 两者的区别就是前者是返回一个类,后者是返回一个基本数据类型。 parseInt()是字符串转为数值,valueOf()数值、字符串来回转都可以。
    2. 而toString()是Object类的一个通用方法,所有类型都可以用,某些基本类型的数据可以通过这个方法转为字符串,但一些类的toString()是转为这个类的哈希码。
    3. 强转不能直接使变量从一个类型转为另一个类型, 必须两者有一定联系才可。比如父类转换为子类。
    点赞 打赏 评论

相关推荐 更多相似问题