java 两个long值相除 我需要保留两位小数 变成string 怎么写
时间: 2024-03-19 10:46:00 浏览: 54
你可以使用 DecimalFormat 类来将 double 转换为 String,并保留两位小数。具体示例如下:
```java
long a = 10;
long b = 3;
double result = (double) a / b;
DecimalFormat df = new DecimalFormat("#.00");
String resultStr = df.format(result);
System.out.println(resultStr);
```
输出结果为:3.33。
相关问题
java两个Long相除,计算百分比并保留两位小数
可以使用如下代码实现:
```java
Long numerator = ...; // 分子
Long denominator = ...; // 分母
double percentage = (double) numerator / denominator * 100.0;
DecimalFormat df = new DecimalFormat("#.00");
String percentageStr = df.format(percentage) + "%";
```
其中,`numerator` 和 `denominator` 分别是要进行除法运算的两个 `Long` 类型的数。首先将它们相除并乘以 100,得到百分比的值。然后使用 `DecimalFormat` 格式化这个百分比值,保留两位小数,并加上百分号。
需要注意的是,`DecimalFormat` 的格式化规则 `"#.00"` 中的 `#` 表示要显示的数字位数,其中 `0` 表示如果位数不够则补 0。所以 `"#.00"` 表示保留两位小数,如果不足两位则补 0。
long类型相除保留两位小数
在Java中,long类型表示整数,无法直接保留小数位数。如果你想要得到保留两位小数的结果,可以将long类型转换为float或double类型进行相除,然后使用格式化输出来控制小数位数。
下面是一个示例代码:
```java
long dividend = 10;
long divisor = 3;
double result = (double) dividend / divisor;
// 或者使用 float result = (float) dividend / divisor;
// 使用DecimalFormat格式化输出结果
DecimalFormat decimalFormat = new DecimalFormat("#.00");
String formattedResult = decimalFormat.format(result);
System.out.println(formattedResult);
```
这样,你就可以得到保留两位小数的结果。在上述示例中,结果为3.33。
阅读全文