String类提供了静态方法format(),可以用来创建格式化后的字符串对象。format()方法只能通过“String.format”静态方法进行调用,不能直接使用对象来调用。format()定义格式如下:
其中,入参format为格式字符串,其中可以包含多个转换符;args为多个入参,也可以为0个,表示格式字符串中由格式转换符引用的参数,例如%d、%f等。
Java中字符串支持的转换符如表6.2.3所示。
表6.2.3 Java中字符串支持的转换符
动手写6.2.29
其运行结果为:
图6.2.29 Java中转换符示例
上述格式转换符不仅可以灵活地将其他基本数据类型转换成字符串,也可以自由组合表达出各种格式的字符串。其他一些常用的转换符如表6.2.4所示。
表6.2.4 其他常用转换符
动手写6.2.30
其运行结果为:
图6.2.30 其他常用转换符
format()方法不仅可以格式化普通字符串和数值,还可以对日期和时间类的字符串进行格式化输出。在实际编程工作中,不同的日期和时间格式的字符串是很常见的,Java中提供了一些用于格式化字符串的转换符。所有日期和时间的转换符都是以“%t”开头的。Java中常用的日期格式化转换符如表6.2.5所示。
表6.2.5 常用的日期格式化转换符(www.xing528.com)
(续上表)
动手写6.2.31
在上面示例中,细心的读者应该会发现最后月份输出时多了一个“月”字,这是因为使用“%tB”是将系统环境中的月份全称输出,而本书使用的是中文环境,所以会多出一个“月”字。动手写6.2.31的运行结果为:
图6.2.31 常用的日期格式化转换符示例
format()方法也支持时间格式的转换,常用的时间格式化转换符如表6.2.6所示。
表6.2.6 常用的时间格式化转换符
(续上表)
动手写6.2.32
其运行结果为:
图6.2.32 常用的时间格式化转换符示例
上述转换符不需要死记硬背,在实际工作中有需要时查询书中的表格即可。编程语言中还有一种强大而灵活的文本处理工具——正则表达式,它使开发者能以编程的方式对复杂的字符串进行创建和搜索。正则表达式可以认为是字符串的一种“编程描述”,与字符串格式化有些相似,都是将字符串按照一定规则排列或者描述出来,第8章正则表达式将详细介绍。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。