文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

【Java学习笔记】16.Java 格式化输出 printf 用法

2023-10-12 13:35

关注

Java 格式化输出 printf 用法

Java 中的 printf 方法用于格式化输出。

格式化指定了输出的形式,包括数字的精度、字符宽度、日期格式等等。下面是一些常用的格式化符号和用法:

字符串格式化

实例

System.out.printf("%s", "hello world"); // 输出 "hello world"

整数格式化

实例

System.out.printf("%d %o %x %X", 10, 10, 10, 10); // 输出 "10 12 a A"

浮点数格式化

%f : 输出浮点数%e : 输出科学计数法表示的浮点数(小写e)%E : 输出科学计数法表示的浮点数(大写E)%.nf : 控制小数点后的位数,n为数字

实例

System.out.printf("%.2f %e %E", 3.1415926, 3.1415926, 3.1415926); // 输出 "3.14 3.141593e+00 3.141593E+00"

布尔值格式化

实例

System.out.printf("%b", true); // 输出 "true"

字符格式化

实例

System.out.printf("%c", 'a'); // 输出 "a"

宽度和精度格式化

实例

System.out.printf("%2d %5.2f %s", 10, 3.1415926, "hello"); // 输出 "10 3.14 hello"

下面是 Java 中 printf 方法中可用的完整格式符号列表:

下面是 Java 中 printf 方法中可用于格式化日期的符号列表:

实例

import java.util.Date; public class Printf {        public static void main(String[] args) {                            // %s表示输出字符串,也就是将后面的字符串替换模式中的%s              System.out.printf("%s", new Integer(1212));              // %n表示换行              System.out.printf("%s%n", "end line");              // 还可以支持多个参数              System.out.printf("%s = %s%n", "Name", "Zhangsan");              // %S将字符串以大写形式输出              System.out.printf("%S = %s%n", "Name", "Zhangsan");              // 支持多个参数时,可以在%s之间插入变量编号,1$表示第一个字符串,3$表示第3个字符串              System.out.printf("%1$s = %3$s %2$s%n", "Name", "san", "Zhang");                                         System.out.printf("true = %b; false = ", true);              System.out.printf("%b%n", false);                             Integer iObj = 342;              // %d表示将整数格式化为10进制整数              System.out.printf("%d; %d; %d%n", -500, 2343L, iObj);              // %o表示将整数格式化为8进制整数              System.out.printf("%o; %o; %o%n", -500, 2343L, iObj);              // %x表示将整数格式化为16进制整数              System.out.printf("%x; %x; %x%n", -500, 2343L, iObj);              // %X表示将整数格式化为16进制整数,并且字母变成大写形式              System.out.printf("%X; %X; %X%n", -500, 2343L, iObj);                                         Double dObj = 45.6d;              // %e表示以科学技术法输出浮点数              System.out.printf("%e; %e; %e%n", -756.403f, 7464.232641d, dObj);              // %E表示以科学技术法输出浮点数,并且为大写形式                          System.out.printf("%E; %E; %E%n", -756.403f, 7464.232641d, dObj);              // %f表示以十进制格式化输出浮点数              System.out.printf("%f; %f; %f%n", -756.403f, 7464.232641d, dObj);              // 还可以限制小数点后的位数              System.out.printf("%.1f; %.3f; %f%n", -756.403f, 7464.232641d, dObj);                                         // %t表示格式化日期时间类型,%T是时间日期的大写形式,在%t之后用特定的字母表示不同的输出格式              Date date = new Date();              long dataL = date.getTime();              // 格式化年月日              // %t之后用y表示输出日期的年份(2位数的年,如99)              // %t之后用m表示输出日期的月份,%t之后用d表示输出日期的日号              System.out.printf("%1$ty-%1$tm-%1$td; %2$ty-%2$tm-%2$td%n", date, dataL);              // %t之后用Y表示输出日期的年份(4位数的年),              // %t之后用B表示输出日期的月份的完整名, %t之后用b表示输出日期的月份的简称              System.out.printf("%1$tY-%1$tB-%1$td; %2$tY-%2$tb-%2$td%n", date, dataL);                           // 以下是常见的日期组合              // %t之后用D表示以 "%tm/%td/%ty"格式化日期              System.out.printf("%1$tD%n", date);              //%t之后用F表示以"%tY-%tm-%td"格式化日期              System.out.printf("%1$tF%n", date);                                         // 输出时分秒              // %t之后用H表示输出时间的时(24进制),%t之后用I表示输出时间的时(12进制),              // %t之后用M表示输出时间的分,%t之后用S表示输出时间的秒              System.out.printf("%1$tH:%1$tM:%1$tS; %2$tI:%2$tM:%2$tS%n", date, dataL);              // %t之后用L表示输出时间的秒中的毫秒              System.out.printf("%1$tH:%1$tM:%1$tS %1$tL%n", date);              // %t之后p表示输出时间的上午或下午信息              System.out.printf("%1$tH:%1$tM:%1$tS %1$tL %1$tp%n", date);                           // 以下是常见的时间组合              // %t之后用R表示以"%tH:%tM"格式化时间              System.out.printf("%1$tR%n", date);              // %t之后用T表示以"%tH:%tM:%tS"格式化时间              System.out.printf("%1$tT%n", date);              // %t之后用r表示以"%tI:%tM:%tS %Tp"格式化时间              System.out.printf("%1$tr%n", date);                                         // %t之后用A表示得到星期几的全称              System.out.printf("%1$tF %1$tA%n", date);              // %t之后用a表示得到星期几的简称              System.out.printf("%1$tF %1$ta%n", date);                           // 输出时间日期的完整信息              System.out.printf("%1$tc%n", date);       }}

来源地址:https://blog.csdn.net/qq_62052372/article/details/129432573

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-服务器
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯