[英]Java - how to quickly convert variable integer -> float?
我是Java的新手,只是想根据数学运算转换变量。 让我们有以下方案:
int var_result;
if(addition) {
var_result = number1+number2; // number1, number2 => integers
}
else if(division){
var_result = (float) number1 / number2;
// and here is the problem - I don't know, how to convert "var_result" from integer to float
}
...just print var result ...
有什么快速的方法,在这种情况下如何转换var_result变量? 在此示例中,最简单的方法是不进行转换,而仅使用float var_result_float
,但我不想以这种方式解决它...
谢谢
int var_result;
已经声明。 您不能期望在其中存储浮点数而不损失精度。
当执行类型转换时,出于评估表达式的目的,该变量会暂时被视为另一种类型,但不会改变其实际含义。
一个整数仍然是一个整数。 您应该使用float var_result_float
来存储浮点数。
int var_result
是一个int
变量。
如果需要float
使用float var_result
我不想这样解决...
好吧...这是唯一的方法。
如果需要将int
或float
存储在变量中,则可以使用double
来存储所有可能的值。
恕我直言,如果可以避免使用float
则不要使用它,因为它的精度相当差。
您无法更改变量的类型,但是可以通过以下方式获得所需的内容:
Object var_result;
if(addition) {
var_result = new Integer(number1+number2); // number1, number2 => integers
}
else if(division){
var_result = new Float( (float) number1 / (float) number2);
}
当然要使用数字,您必须使用instanceof测试类型并根据需要将其强制转换为Float或Integer,因此这非常笨拙。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.