You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java中使用System.out.format输出Double后如何保留后续文本?

解决Java中格式化输出Double后无法追加文本的问题

你的问题出在System.out.format的参数匹配逻辑上:格式字符串里只有一个%.2f占位符,程序只会读取第一个参数maxTemp,后面的"*C"因为没有对应的占位符,直接被忽略了。

两种可行的解决方法:

方法1:直接把文本写入格式字符串

把*C直接放在格式字符串的%.2f后面,不需要额外传参数:

double maxTemp = 5.43210;
System.out.format("\nThe highest Temperature recorded was: %.2f*C", maxTemp);

方法2:添加对应占位符传递文本

如果单位是动态变量,可以在格式字符串里加一个字符串占位符%s,再把单位作为第二个参数传入:

double maxTemp = 5.43210;
String unit = "*C";
System.out.format("\nThe highest Temperature recorded was: %.2f%s", maxTemp, unit);

两种方法都能得到你期望的输出:

The highest Temperature recorded was: 5.43*C

内容的提问来源于stack exchange,提问作者TaxingClock

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 11:11:20