您的位置:首页 > 编程语言 > Java开发

Java中String 的 format用法

2013-02-27 18:01 549 查看

常规类型的格式化

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

l format(String format, Object... args)

该方法使用指定的字符串格式和参数生成格式化的新字符串。 新字符串始终使用本地语言环境。例如当前日期信息在中国语言环境中的表现形式为“2007-10-27”,但是在其他国家有不同的表现形式。

语法:

String.format(format,args...)

format:字符串格式。

args...:字符串格式中由格式说明符引用的参数。如果还有格式说明符以外的参数,则忽略这些额外的参数。参数的数目是可变的,可以为0。

l format(Locale locale, String format, Object... args)

该方法使用指定的语言环境、字符串格式和参数生成一个格式化的新字符串。新字符串始终使用指定的语言环境。

语法:

String.format(locale,format,args...)

locale:指定的语言环境。

format:字符串格式。

args...:字符串格式中由格式说明符引用的参数。如果还有格式说明符以外的参数,则忽略这些额外的参数。参数的数目是可变的,可以为0。

format()方法中的字符串格式参数有很多种转换符选项,例如:日期、整数、浮点数等。这些转换符的说明如表7.1所示。

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

public static void main(String[] args) {
Date date = new Date();
String str01 = String.format("2位数字24小时制的小时(不足2位前面补0):%tH", date);
System.out.println(str01);
String str02 = String.format("2位数字12小时制的小时(不足2位数前面补0):%tI", date);
System.out.println(str02);
String str03 = String.format("2位数字24小时制的小时(前面不补0):%tk", date);
System.out.println(str03);
String str04 = String.format("2位数字12小时制的小时(前面不补0):%tl", date);
System.out.println(str04);
String str05 = String.format("2位数字的分钟(不足2位前面补0):%tM", date);
System.out.println(str05);
String str06 = String.format("2位数字的秒(不足2位前面补0):%tS", date);
System.out.println(str06);
String str07 = String.format("3位数字的毫秒(不足3位前面补0):%tL", date);
System.out.println(str07);
String str08 = String.format("9位数字的毫秒数(不足9位前面补0):%tN", date);
System.out.println(str08);
String str09 = String.format(Locale.US,"小写字母的上午或下午标记(英):%tp", date);
System.out.println(str09);
String str10 = String.format("小写字母的上午或下午标记(中):%tp", date);
System.out.println(str10);
String str11 = String.format("相对于GMT的RFC822时区的偏移量:%tz", date);
System.out.println(str11);
String str12 = String.format("时区缩写字符串:%tZ", date);
System.out.println(str12);
String str13 = String.format("1970-1-1 00:00:00 到现在所经过的秒数:%ts", date);
System.out.println(str13);
String str14 = String.format("1970-1-1 00:00:00 到现在所经过的毫秒数:%tQ", date);
System.out.println(str14);
}


显示结果:



参考与:http://blog.csdn.net/longma2006/article/details/3018801
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: