问答详情
源自:3-4 Java 中基本类型和字符串之间的转换

这两个有什么区别吗?

double c=Integer.valueOf(a);与Double c=Double.valueOf(a);目前我运行这两个都可以执行成功,但不晓得中间到底有什么区别,而且如果写成doube c=double.valueOf(a);或者Double c=Integer.valueOf(a);都会报错,不太明白double和Double的区别

提问者:qq_汪星人_4 2018-03-20 16:42

个回答

  • Pikachu2016
    2019-08-06 15:24:34

    double c=double.valueOf(a)你这样肯定报错啦,应该改成double c=Double.valueOf(a)

    因为double是基本数据类型,而Double是它的包装类,类有它自己的方法可以调用,而这句代码就是调用Double包装类的方法

  • 伊万诺维奇
    2018-05-08 07:42:22

    a指的是什么类型?

    如果能运行:double c=Integer.valueOf(a);能运行成功的原因是有自动拆箱以及类型装换的操作执行;

    double是基础类型,没有自己的方法,所以不能调用。为了迎合面向对象,为了让double也有自己的方法,所以封装成包装类Double。

  • 慕数据4509904
    2018-03-20 17:20:09

    double是基本数据类型,Double是它的包装类,能调用方法,而基本数据类型不能调用