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);
相关推荐
xcl09256 小时前
商超智能运营实战:数据驱动提升门店效率与体验指南
java·mfc·宠物
Flynt8 小时前
OpenJDK禁AI代码半年了,现在执行得怎么样?答案是:全靠自觉
java·开源·ai编程
古法安卓13 小时前
Android-日志系统源码解析
android·java·android studio
小夏coding14 小时前
从"一把梭"到"精妙拆解" —— 滑动窗口计时框架的设计演进
java·后端
MacroZheng15 小时前
同事问我:"Claude Code经常失忆,不怕它把项目搞炸?",我:"怕,三个Markdown文件给它装个永不丢失的外置大脑!"
java·人工智能·后端
十年Java程序媛16 小时前
深度实战:JDK21 虚拟线程 + HikariCP 生产正确配比、坑点、监控全套
java·spring boot
xiaoqiMikko17 小时前
有人在搜一个不存在的 Tomcat 版本
java·tomcat
用户31268748772020 小时前
ConcurrentHashMap 怎么保证线程安全?从分段锁到 CAS+synchronized
java
vipxieliang20 小时前
ValidX vs Apache Commons Validator:功能与性能对比
java·spring boot
SimonKing20 小时前
升级Spring Boot 4后,从 Jackson 2 到 3,到底有哪些变化
java·后端·程序员