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

我想请教下,java中运算结果为小数时为什么小数部分为0
最新回答
舟遥客

2024-11-07 01:27:15

你定义的时候把 运算数 定义成 浮点型,然后再进行运算。

如: 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)
听萧与声

2024-11-07 00:04:35

假如除数和被除数都是int型,那么得到的数也就是整数 1。
然后你将1赋值给double,他会自动转换类型,变成double 1.0(转换有一定规则,你查下就知道)。所有输出值为1.0。
如果你想让他输出为1.5,你可以改变除数和被除数的类型(改变其中一个也可以,跟之前一样的知识点)
落花缤纷下

2024-11-07 01:42:07

你这里的3和2都是整型,3/2运算后还是整型自然就是1,然后被double强制类型转换就变成了1.0了。如果你要得到1.5,那你把3定义成double类型的就行了
卩s团团丨

2024-11-07 01:01:09

默认一个整数是int类型的,所以3/2 还是int类型,也就是 3/2=1; 然后把1赋值给double就成1.0了。。

下面那位这样也可以。或者这样
double b = 3;
double a=b/2;
System.out.println(a);
结果也会是1.5
干凈没朋友

2024-11-07 00:06:38

你使用整形数据来进行运算了吧。是的话你将被除数加上.0或者你将除数和被除数都转成float型或者double型,运算结果也使用对应的数据类型接收。