请问java中,Double类型和double有什么不同?能否转换?

我遇到的问题:定义一个double类型的变量doublesumPrice=0.0;之后重数据库中查出来一个对象rec,该对象有一个属性amount,用rec.getAmo... 我遇到的问题:
定义一个double类型的变量 double sumPrice = 0.0;
之后重数据库中查出来一个对象rec,该对象有一个属性amount,用rec.getAmount()出来一个为Double类型的变量amount,在迭代过程中,求amount累加合并赋值给sumPrice:在for循环中,sumPrice+=amount;
系统提示:double和Double不能相加,为什么?怎么转换?
展开
 我来答
568145421
推荐于2017-09-24 · 知道合伙人软件行家
568145421
知道合伙人软件行家
采纳数:1353 获赞数:6756

向TA提问 私信TA
展开全部
你好Double类型是double的包装类,在JDK1.5以后,二者可以直接相互赋值,称为自动拆箱和自动装箱。看你的提示,我推测你的jdk版本在1.5以前。
如果是这样,可以用Double中的方法,将包装类转为基本数据类型,如:
double amount = rec.getAmount().doubleValue() ;
沐忠04Y
2011-09-05 · TA获得超过450个赞
知道小有建树答主
回答量:151
采纳率:0%
帮助的人:128万
展开全部
double是基本类型数据,Double是基本类型double的包装类,是一个对象。所以两个不能直接相加。需要用amount.doubleValue()返回的值就变成了基本类型的double,就可以相加了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6778dccd3
2011-09-05 · 超过16用户采纳过TA的回答
知道答主
回答量:55
采纳率:0%
帮助的人:50.3万
展开全部
你用的是JDK1.5以下的版本。不支持自动装箱拆箱
Double 是double的包装类。 也就是对象化了。
在1.4中可以这样使用
Double d =new Double(dou)可将double基本数据类型装箱为Double包装类
double dou =d.doubleValue()可将Double的包装类拆箱为基本数据类型
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-09-05
展开全部
Double是对象 double是基本类型
就相当于Integer和int
两者可以转化
Double.....点一下就出现具体的转化方法了,具体名字忘记了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式