资讯专栏INFORMATION COLUMN

JAVA字符串格式化——String.format()的使用

lavor / 2883人阅读

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

引言

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));

对日期时间进行格式化

日期的转换符

时间的转换符

实例

 Date date = new Date();
 System.out.printf("全部日期和时间信息:%tc%n",date);
 System.out.printf("年-月-日格式:%tF%n",date);
 System.out.printf("月/日/年格式:%tD%n",date);
 System.out.printf("HH:MM:SS PM格式(12时制):%tr%n",date);
 System.out.printf("HH:MM:SS格式(24时制):%tT%n",date);
 System.out.printf("HH:MM格式(24时制):%tR",date);

总结
此方法不是很常用,在此就当做笔记记录一下,对它有个大概的了解,说实话到现在写项目基本没用上。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/74720.html

相关文章

  • Java™ 教程(格式数字打印输出)

    格式化数字打印输出 之前你已经看到使用print和println方法将字符串打印到标准输出(System.out),由于所有数字都可以转换为字符串(你将在本课后面看到),你可以使用这些方法打印出任意的字符串和数字混合,但是,Java编程语言还有其他方法,可以在包含数字时对打印输出进行更多控制。 printf和format方法 java.io包中包含一个PrintStream类,它有两种格式化方法可...

    rubyshen 评论0 收藏0
  • Java日期处理工具类(基于Calendar)

    摘要:功能描述日期处理工具类基于主要功能日期校验获取系统当前日期可自定义系统日期判断闰年获取连个日期之间的天数,月数判定日期的前后将字符串转换为或等日期格式默认修改日志当前操作系统日期日期格式默认时间格式默认年月日时分秒静态初始化默认系统当前 package datasource; import java.text.DateFormat; import java.text.ParseExc...

    GitCafe 评论0 收藏0
  • (Thinking in Java)第13章 字符

    摘要:四上的操作看五格式化输出运用和语言很相似和是等价的哟类格式化说明符转换六正则表达式网上教程学七扫描输入新增了类。 一、不可变String String类型的对象是不可变的,所有的改变实际上都是创建了一个新的String对象,另外当String作为传入参数的时候,其实实际上传入的是这个引用的一个拷贝,这个方法结束了之后这个传入的引用也就消失了,原来的那个String不会受到方法内的影响而...

    feng409 评论0 收藏0
  • Java IO学习笔记六

    摘要:实例文件中的结果如下陈加兵姓名陈加兵年龄成绩姓名陈加兵年龄成绩文件创建成功陈加兵姓名年龄成绩姓名年龄成绩继承,主要针对的是字符流的操作向文本输出流打印对象的格式化表示形式。构造函数使用指定文件创建不具有自动行刷新的新。 打印流 在整个IO包中,打印流是输出信息最方便的类,主要包含字节打印流(PrintStream)和字符打印流(PrintWrite)。打印流提供了非常方便的打印功能,可...

    syoya 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<