Java中double类型的数据,如何保留小数后两位

在 Java 中,你可以使用 DecimalFormat 类或者 String.format 方法来将 double 类型的数字保留指定位数的小数。以下是两种常用方法的示例:

方法1:使用 DecimalFormat 类

java 复制代码
import java.text.DecimalFormat;

public class Main {
    public static void main(String[] args) {
        double number = 123.456789;
        
        // 创建DecimalFormat对象,指定小数位数
        DecimalFormat df = new DecimalFormat("#.##");
        
        // 使用format方法将double类型的数字保留两位小数
        String formattedNumber = df.format(number);
        
        System.out.println("保留两位小数:" + formattedNumber);
    }
}

方法2:使用 String.format 方法

java 复制代码
public class Main {
    public static void main(String[] args) {
        double number = 123.456789;
        
        // 使用String.format方法将double类型的数字保留两位小数
        String formattedNumber = String.format("%.2f", number);
        
        System.out.println("保留两位小数:" + formattedNumber);
    }
}

无论使用哪种方法,都会将 number 变量的值格式化为保留两位小数的字符串。在上述示例中,123.456789 会被格式化为 123.46。

请注意,这些方法并不会改变 number 变量本身的值,而是返回一个格式化后的字符串。如果需要将格式化后的字符串转换回 double 类型的数字,可以使用 Double.parseDouble 方法或者 Double.valueOf 方法进行转换。例如:

java 复制代码
String formattedNumber = "123.46";
double parsedNumber = Double.parseDouble(formattedNumber);
相关推荐
范什么特西15 小时前
狂神报错页面设置
java·tomcat
架构师沉默15 小时前
AI 真的会取代程序员吗?
java·后端·架构
Memory_荒年16 小时前
ReentrantLock 线程安全揭秘:从“锁”到“重入”的魔法
java·后端·源码
L0CK16 小时前
秒杀异步下单业务逻辑梳理
java
zuoerjinshu16 小时前
【spring专题】编译spring5.3源码
java·后端·spring
JavaGuide16 小时前
鹅厂面试:SELECT * 一定导致索引失效?常见索引失效场景有哪些?
java·数据库·后端·mysql·大厂面试
是梦终空11616 小时前
C++中的职责链模式变体
开发语言·c++·算法
mjhcsp16 小时前
C++遗传算法(Genetic Algorithm,GA):进化式全局优化的核心解析
开发语言·c++
QuZero16 小时前
Java `volatile` and Memory Model
java·jvm
me83216 小时前
【Java】解决Maven多模块父POM加载失败+IDEA无法新建Java类问题
java·maven·intellij-idea