字符串格式化:String.format()

一、format()方法的两种重载方式:
  1、 format(String format, Object... args);//使用本地语言环境生成新的字符串

  2、format(Locale locale, String format, Object... args);//使用指定区域语言环境生成新的字符串

二、占位符(format):

  完整占位符格式:%[index$][标识]*[最小宽度][.精度]转换符

  % 占位符的起始字符,表示占位符从此开始。若要在占位符中使用%,则需要写成%%。 

  [index$] 位置索引从1开始计算,用于指定对索引相应的实参进行格式化并替换掉该占位符。暂不明

  [标识] 用于增强格式化能力,可同时使用多个[标识] ,注意某些[标识] 是不能同时使用的。暂不明

  [最小宽度] 用于设置格式化后的字符串最小长度,当格式化后的字符串实际长度小于[最小宽度] 时,默认在左边补空格,若使用[-最小宽度]则在右边补空格

  [.精度] 对于浮点型数据格式化使用,设置保留的小数位数。

  转换符 用于是的格式的样式和限制对于入参的数据类型

三、常用转换符

  1、

转换符说明示例
%s字符串类型"abcd1234"
%c字符类型'a'
%b布尔类型true
%d整数类型(十进制)99
%x整数类型(十六进制)FF
%o整数类型(八进制)77
%f浮点类型99.99
%a浮点类型(十六进制)FF.35AE
%e指数类型9.38e+5
%g通用浮点类型(f和e类型中较短的) 
%h散列码 
%%百分比类型 
%n换行符 
%tx日期与时间类型(x代表不同的日期与时间转换符) 

 

 

 

 

 

 

 

 

 

 

 

 

 

  

 

 

2、搭配转换符的标志

标志说明示例结果
+为正数或负数添加符号format("%+d",99)+99
-左对齐format("%-5s","str")|str  |
0数字前补0format("%05d",99)00099
空格在整数前添加指定数量空格format("% 5d",99)|   99|
,用,对数字进行格式化(三位一逗)format("%,d",321321)321,321
(使用括号包含负数format("%(d",-99)99
#

如果是浮点数,则包含小数点

如果是十六进制或八进制则添加0X或0

format("%#x",99)

format("%#o",99)

0x63

0143

<格式化前一个转换符所描述的参数format("%f和%<3.2f",99.45)99.450000和99.45
$被格式化的参数索引format("%1$d,%2$s", 99,"abc")99,abc

 

 

 

 

 

 

 

 

 

 

 

 

  3、日期和时间 

3.1、常见日期和时间组合的格式 

转换符说明示例
c包括全部日期和时间信息星期六 十月 27 14:21:20 CST 2007
F年-月-日”格式2007-10-27
D“月/日/年”格式10/27/07
r“HH:MM:SS PM”格式(12时制)02:25:51 下午
THH:MM:SS”格式(24时制)14:28:16
R“HH:MM”格式(24时制)14:28

 

 

 

 

 

  

 

 

3.2、 日期格式化转换符 

转换符说明示例
b或者h月份简称

中:十月

英:Oct

B月份全称

中:十月

英:October

a星期的简称

中:星期六

英:Sat

A星期的全称

中:星期六

英:Saturday

C年的前两位数字(不足两位前面补0)20
y年的后两位数字(不足两位前面补0)07
Y4位数字的年份(不足4位前面补0)2007
j一年中的天数(即年的第几天)300
m两位数字的月份(不足两位前面补0)10
d两位数字的日(不足两位前面补0)27
e月份的日(前面不补0)5

    

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3.3、 时间格式化转换符 

转换符说明示例
H2位数字24时制的小时(不足2位前面补0)15
I2位数字12时制的小时(不足2位前面补0)03
k2位数字24时制的小时(前面不补0)15
l2位数字12时制的小时(前面不补0)3
M2位数字的分钟(不足2位前面补0)03
S2位数字的秒(不足2位前面补0)09
L3位数字的毫秒(不足3位前面补0)015
N9位数字的毫秒数(不足9位前面补0)562000000
p小写字母的上午或下午标记

中:下午

英:pm

z相对于GMT的RFC822时区的偏移量+0800
Z时区缩写字符串CST

转载于:https://www.cnblogs.com/jiaolj/p/5440566.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值