专栏首页JAVA葵花宝典这可能是将String.format格式化讲解的最清楚的一篇文章

这可能是将String.format格式化讲解的最清楚的一篇文章

目录

  • 一、引言
  • 二、重装
  • 三、占位符
  • 四、超过一项以上的参数时
  • 五、转换符
  • 六、转换符的标志
  • 七、对字符串进行格式化
  • 八、对整数进行格式化
  • 九 、对浮点数进行格式化
  • 十、对日期时间进行格式化

一、引言

String类的format()方法用于创建格式化的字符串以及连接多个字符串对象。熟悉C语言应该记得C语言的sprintf()方法,两者有类似之处。format()方法有两种重载形式。

二、重载

// 使用当前本地区域对象(Locale.getDefault()),制定字符串格式和参数生成格式化的字符串
String String.format(String fmt, Object... args);
// 自定义本地区域对象,制定字符串格式和参数生成格式化的字符串
String String.format(Locale locale, String fmt, Object... args);

三、占位符

格式化说明最多会有5个部分(不包括%符号) . 下面的[]符号里面都是选择性的项目,因此只有%与type是必要的. 格式化说明的顺序是有规定的,必须要以这个顺序章指定.

实例:

四、超过一项以上的参数时

把新的参数加到后面,因此会有3个参数来调用format()而不是两个,并且在第一个参数中,也就是格式化串中,会有两个不同的格式化设定,也就是两个%开头的字符组合,第二个会应用在第一个%上面,第三个参数会用在第二%上,也就是参数会依照顺序应用在%上面" 。

int one = 123456789;
 double two = 123456.789;
 String s = String.format("第一个参数:%,d 第二个参数:%,.2f", one, two);
 System.out.println(s);

五、转换符

六、转换符的标志

七、对字符串进行格式化

示例——将"hello"格式化为"hello "(左对齐)

 String raw = "hello word";
 String str = String.format("|%-15s|", raw);
 System.out.println(str);

八、对整数进行格式化

示例——将-1000显示为(1,000)

int num = -1000;
String str = String.format("%(,d", num);
System.out.println(str);

九 、对浮点数进行格式化

double num = 123.456789;
System.out.print(String.format("浮点类型:%.2f %n", num));
System.out.print(String.format("十六进制浮点类型:%a %n", num));
System.out.print(String.format("通用浮点类型:%g ", num));

十、对日期时间进行格式化

日期的转换符

时间的转换符

实例

本文分享自微信公众号 - JAVA葵花宝典(Javakhbd)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-06-25

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Java 代码精简之道

    其中:“道”指“规律、道理、理论”,“术”指“方法、技巧、技术”。意思是:“道”是“术”的灵魂,“术”是“道”的肉体;可以用“道”来统管“术”,也可以从“术”中...

    JAVA葵花宝典
  • 微信支付之扫码、APP、小程序支付接入详解

    做电商平台的小伙伴都知道,支付服务是必不可少的一部分,今天我们开始就说说支付服务的接入及实现。目前在国内,几乎90%中小公司的支付系统都离不开微信支付和支付宝支...

    JAVA葵花宝典
  • SpringBoot 并发登录人数控制

    通常系统都会限制同一个账号的登录人数,多人登录要么限制后者登录,要么踢出前者,Spring Security 提供了这样的功能,本文讲解一下在没有使用Secur...

    JAVA葵花宝典
  • 这可能是将String.format格式化讲解的最清楚的一篇文章

    String类的format()方法用于创建格式化的字符串以及连接多个字符串对象。熟悉C语言应该记得C语言的sprintf()方法,两者有类似之处。format...

    lyb-geek
  • Flink 中这样管理配置,你知道?

    如果你了解 Apache Flink 的话,那么你应该熟悉该如何像 Flink 发送数据或者如何从 Flink 获取数据。但是在某些情况下,我们需要将配置数据发...

    zhisheng
  • Android TextView 中 setText 的空指针异常

    第一次发现这问题,记录一下,在适配器里面给TextView设置一个int类型的值,然后闪退报错,DeBug模式下查看了布局和id,均没有问题,再次查看日志输出,...

    萬物並作吾以觀復
  • Java基础知识之Scanner类和String类学习,讲明白了,适合初学者

    1、Scanner 的概述和方法介绍 A:Scanner 的概述 B:Scanner 的构造方法原理 Scanner(InputStream source) S...

    用户1289394
  • Get the image file(s) some informations,Including the Make,Model,Date/Time,etc

    This is a blog about how to get the image file(s) some informations.Including th...

    Hongten
  • OKHttp源码学习--HttpURLConnection HttpClient OKHttp Get and post Demo用法对比

    由以上demo可以看出,OKHttp使用最简单方便,代码书写量少,而且网络请求高效。

    yuanyuan
  • JAVAWEB开发的微信公众号H5支付

    一切需求都是来源于业务需要,前一阵子做了微信扫码支付,的确相对PC用户来说方便了很多。但是如果手机下单,你总不能让用户自己扫自己吧?查看了一下文档,微信还是支持...

    小柒2012

扫码关注云+社区

领取腾讯云代金券