格式化字符串
String 类的静态format()方法用于创建格式化的字符串。Format()有两种重载形式。
1.format(String format,Object...args);该方法使用指定的格式字符串和参数返回一个格式化字符串,格式化的新字符串使用本地默认的语言环境。
str.(String format,Object...args);
Format:格式化字符串;
args:格式字符串中由格式说明符引用的参数。如果还有格式说明符以外的参数,则忽略这些额外的参数,此参数的数目是可变的,可以为0.
- format(Local 1,String format,Object...args)
1:格式化字符串要应用的语言环境,如果1为null,则不进行本地化。
Format:格式化字符串;
args:格式字符串中由格式说明符引用的参数。如果还有格式说明符以外的参数,则忽略这些额外的参数,此参数的数目是可变的,可以为0.
日期和时间字符串格式化
在应用程序中,经常需要显示时间和日期,如果想输出满意的日期和时间格式,一般需要编写大量的代码经过各种算法才能实现。Format()方法中通过给定的特殊转换符作为参数来实现对日期和时间的格式化。
日期格式化
常用的日期格式化转换符
转换符 | 说明 | 示例 |
%te | 一个月中的某一天(1~31) | 2 |
%tb | 指定语言环境是月份简称 | Feb(英文) 二月(中文) |
%tB | 指定语言环境是月份全称 | February(英文)二月(中文) |
%tA | 指定语言环境是星期全称 | Monday(英文)星期一(中文) |
%ta | 指定语言环境是星期简称 | Mon(英文) 星期一(中文) |
%tc | 包括全部日期和时间信息 | 星期二 二月 25 13:37:22 CST 2008 |
%tY | 4位年份 | 2008 |
%tj | 一年中的第几天(1~366) | 085 |
%tm | 月份 | 03 |
%td | 一个月中的第几天(1~31) | 02 |
%ty | 2位年份 | 08 |
例如: 实现将当前日期以4位年份,月份全程,2位日期形式输出
时间格式化
使用format()方法不仅可以完成日期的格式化,也可以实现时间的格式化。时间格式化转换符要比日期格式化转换符更多更精确,他可以将时间格式化为时,分,秒,毫秒。
时间格式转换符
转换符 | 说明 | 示例 |
%tH | 2位数字的24时制的小时(00~23) | 14 |
%tI | 2位数字的12时制的小时(01~12) | 05 |
%tk | 2位数字的24时制的小时(0~23) | 5 |
%tl | 2位数字的12时制的小时(1~12) | 10 |
%tM | 2位数字的分钟(00~59) | 05 |
%tS | 2位数字的秒数(00~60) | 12 |
%tL | 3位数字的毫秒数(000~999) | 920 |
%tN | 9位数字的微妙数(000000000~999999999) | 062000000 |
%tp | 指定语言环境下上午和下午的标记 | 下午(中文),pm(英文) |
%tz | 相对于GMT RFC 82 格式的数字时区偏移量 | +0800 |
%tZ | 时区缩写形式的字符串 | CST |
%ts | 1970-01-01 00:00:00 至现在经过的秒数 | 1206426646 |
%tQ | 1970-01-01 00:00:00 至现在经过的毫秒数 | 1206426737453 |
例如: 实现将当前日期以2位小时数,2位分钟数,2位秒数形式输出
格式化常见的日期时间组合
格式化日期与时间的转换符定义了各种日期时间组合的格式,其中最常见的是日期和时间的组合格式。
常见的日期和时间的组合格式
转换符 | 说明 | 示例 |
%tF | “年-月-日” 格式(4位年份) | 2008-03-25 |
%tD | “月/日/年” 格式(2位年份) | 03/25/08 |
%tc | “全部日期和时间信息” | 星期二 三月 25 15:20:00 CST 2008 |
%tr | “时:分:秒 PM(AM)” 格式(12时间) | 03:22:06 下午 |
%tT | “时:分:秒” 格式(24时制) | 15:25:50 |
%tR | “时:分” 格式(24时制) | 15:25 |
例如:实现将当前日期时间的全部信息以及指定格式的日期输出
常规类型格式化
常规类型格式化可以应用与任何参数类型
转换符 | 说明 | 示例 |
%b %B | 结果被格式化为布尔类型 | true |
%h %H | 结果被格式化为散列码 | A05A5198 |
%s %S | 结果被格式化为字符串类型 | “abcd” |
%c %C | 结果被格式化为字符类型 | ‘a’ |
%d | 结果被格式化为十进制整数 | 40 |
%o | 结果被格式化为八进制整数 | 11 |
%x %X | 结果被格式化为十六进制整数 | 4b1 |
%e | 结果被格式化为用计算机科学计数法表示的十进制 | 1.700000e+01 |
%a | 结果被格式化为带有效位数和指数的十六进制浮点值 | 0X1.C000000000001P4 |
%n | 结果为特定平台的行分割符 |
|
%% | 结果为字面值’%’ | % |
例如: 实现不同数据类型到字符串的转换