java中运算结果为小数时为什么小数部分为0

比如doublea=3/2;System.out.println(a);这样输出的为1.0而不是1.5... 比如
double a=3/2;
System.out.println(a);
这样输出的为1.0而不是1.5
展开
 我来答
qiuzhilumanman

推荐于2016-09-13 · TA获得超过175个赞
知道答主
回答量:83
采纳率:0%
帮助的人:17.3万
展开全部
你定义的时候把 运算数 定义成 浮点型,然后再进行运算。

如: double num1= 6;
double num2 = 4;
double result = num1/num2;

-----------------------------------
小数为0的情况:
int num1 = 6;
int num2 = 4;
int result = num1/num2; (或 double result = num1/n um2;)
原因是 num1和num2都是 整形 ,两个整形的数 运算完成后 得到的数是 整数(如:1),如果赋值给一个 浮点型 的变量,那么只是在 整数 的后面加上 .0 (如:1.0)
百度网友da9356e
推荐于2016-04-23
知道答主
回答量:13
采纳率:0%
帮助的人:12.6万
展开全部
假如除数和被除数都是int型,那么得到的数也就是整数 1。
然后你将1赋值给double,他会自动转换类型,变成double 1.0(转换有一定规则,你查下就知道)。所有输出值为1.0。
如果你想让他输出为1.5,你可以改变除数和被除数的类型(改变其中一个也可以,跟之前一样的知识点)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
393107529
2013-09-15 · TA获得超过154个赞
知道小有建树答主
回答量:147
采纳率:0%
帮助的人:128万
展开全部
你这里的3和2都是整型,3/2运算后还是整型自然就是1,然后被double强制类型转换就变成了1.0了。如果你要得到1.5,那你把3定义成double类型的就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
JSON在线解析
2013-09-15 · 专注JSON在线解析工具,JavaDemo分享
JSON在线解析
采纳数:644 获赞数:1154

向TA提问 私信TA
展开全部
默认一个整数是int类型的,所以3/2 还是int类型,也就是 3/2=1; 然后把1赋值给double就成1.0了。。

下面那位这样也可以。或者这样
double b = 3;
double a=b/2;
System.out.println(a);
结果也会是1.5
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hahah220
2015-08-03 · 超过63用户采纳过TA的回答
知道小有建树答主
回答量:184
采纳率:100%
帮助的人:72.6万
展开全部
你使用整形数据来进行运算了吧。是的话你将被除数加上.0或者你将除数和被除数都转成float型或者double型,运算结果也使用对应的数据类型接收。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式