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 展开
double a=3/2;
System.out.println(a);
这样输出的为1.0而不是1.5 展开
展开全部
你定义的时候把 运算数 定义成 浮点型,然后再进行运算。
如: 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)
如: 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)
展开全部
假如除数和被除数都是int型,那么得到的数也就是整数 1。
然后你将1赋值给double,他会自动转换类型,变成double 1.0(转换有一定规则,你查下就知道)。所有输出值为1.0。
如果你想让他输出为1.5,你可以改变除数和被除数的类型(改变其中一个也可以,跟之前一样的知识点)
然后你将1赋值给double,他会自动转换类型,变成double 1.0(转换有一定规则,你查下就知道)。所有输出值为1.0。
如果你想让他输出为1.5,你可以改变除数和被除数的类型(改变其中一个也可以,跟之前一样的知识点)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你这里的3和2都是整型,3/2运算后还是整型自然就是1,然后被double强制类型转换就变成了1.0了。如果你要得到1.5,那你把3定义成double类型的就行了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
默认一个整数是int类型的,所以3/2 还是int类型,也就是 3/2=1; 然后把1赋值给double就成1.0了。。
下面那位这样也可以。或者这样
double b = 3;
double a=b/2;
System.out.println(a);
结果也会是1.5
下面那位这样也可以。或者这样
double b = 3;
double a=b/2;
System.out.println(a);
结果也会是1.5
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你使用整形数据来进行运算了吧。是的话你将被除数加上.0或者你将除数和被除数都转成float型或者double型,运算结果也使用对应的数据类型接收。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询