java 截取小数点后两位
时间: 2025-01-05 16:42:13 浏览: 9
在Java中,如果你想要截取一个double或float类型的数值的小数点后两位,你可以使用`DecimalFormat`或者`String`的substring()方法配合`indexOf()`来实现。以下是两种方法的示例:
**使用`DecimalFormat`:**
```java
import java.text.DecimalFormat;
public class Main {
public static void main(String[] args) {
double number = 3.14159;
DecimalFormat df = new DecimalFormat("#.00");
String formattedNumber = df.format(number);
System.out.println(formattedNumber); // 输出 "3.14"
}
}
```
**使用字符串操作:**
```java
public class Main {
public static void main(String[] args) {
double number = 3.14159;
String strNumber = Double.toString(number);
int dotIndex = strNumber.indexOf(".");
if (dotIndex != -1) {
int secondLastDigitIndex = dotIndex + 2; // 因为我们从0开始计数
if (secondLastDigitIndex < strNumber.length()) {
System.out.println(strNumber.substring(0, secondLastDigitIndex)); // 输出 "3.14"
} else {
System.out.println("The number has fewer than two digits after the decimal.");
}
} else {
System.out.println("The number does not have a decimal part.");
}
}
}
```
阅读全文