String.format()方法占位符
  YIxv8m9rQSBD 2023年11月26日 23 0

格式化字符串由4部分组成,特殊的格式常以%index$开头,index从1开始取值,表示将第index个参数拿进来进行格式化,[最小宽度]的含义也很好理解,就是最终该整数转化的字符串最少包含多少位数字。剩下2个部分的含义:

标识如下:

  • -在最小宽度内左对齐,不可以与"用0填充"同时使用
  • #只适用于8进制和16进制,8进制时在结果前面增加一个0,16进制时在结果前面增加0x
  • +结果总是包括一个符号(一般情况下只适用于10进制,若对象为BigInteger才可以用于8进制和16进制)
  •  正值前加空格,负值前加负号(一般情况下只适用于10进制,若对象为BigInteger才可以用于8进制和16进制)
  • 0结果将用零来填充
  • ,只适用于10进制,每3位数字之间用","分隔
  • (若参数是负数,则结果中不添加负号而是用圆括号把数字括起来(同’+'具有同样的限制)

例如:

System.out.println(String.format("%1$-9d", 312356));
312356
System.out.println(String.format("%1$#9x", 312356));
  0x4c424
System.out.println(String.format("%1$-#9o", 312356));
01142044
System.out.println(String.format("%1$+9d", 312356));
  +312356
System.out.println(String.format("%1$ 9d", 312356));
   312356
System.out.println(String.format("%1$ 9d", -312356));
  -312356
System.out.println(String.format("%1$09d", 312356));
000312356
System.out.println(String.format("%1$,9d", 312356));
  312,356
System.out.println(String.format("%1$(9d", 312356));
   312356


【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月26日 0

暂无评论

推荐阅读
YIxv8m9rQSBD