如何在Java中从“double”类型的值中删除十进制值
我正在调用一个名为“calculateStampDuty”的方法,该方法将返回 物业应支付的印花税金额。百分比计算有效 很好,并返回正确的值“15000.0”。但是,我想将该值显示给 前端用户只需输入“15000”,因此只需删除小数点和任何前面的值 之后如何做到这一点?我的代码如下:
float HouseValue = 150000;
double percentageValue;
percentageValue = calculateStampDuty(10, HouseValue);
private double calculateStampDuty(int PercentageIn, double HouseValueIn){
double test = PercentageIn * HouseValueIn / 100;
return test;
}
我尝试了以下方法:
创建将双精度值转换为字符串的新字符串,如下所示:
String newValue = percentageValue.toString();
我已尝试在String对象上使用“valueOf”方法,如下所示:
String total2 = String.valueOf(percentageValue);
但是,我无法得到没有小数点的值。有人知道吗 在本例中,如何获得“15000”而不是“15000.0”
谢谢
# 1 楼答案
您可以将
double
值转换为int
值。int x = (int) y
其中y是双变量。然后,打印x
不会给出小数位数(15000
而不是15000.0
)# 2 楼答案
我这样做是为了从
double
值中删除小数位上面的输出是
# 3 楼答案
您可以使用显式类型转换在一行代码中将
double
、float
变量转换为integer
输出将是
3
# 4 楼答案
你可以用
或
# 5 楼答案
又好又简单。将此代码段添加到您要输出到的内容中:
# 6 楼答案
我想试试这个:
我已经测试过了,它可以工作,所以它只是从这个字符串转换成你想要的任何类型的数字或变量。你可以这样做