• String的format方法--应用


    String的format方法String.format(String format, Object ... args)很有用,String format参数是这样的:%[argument_index$][flags][width][.precision]conversion

    格式化日期

      String.format("%tY", new Date())    //2011
      String.format("%tm", new Date())   //03
      String.format("%tF", new Date())    //2011-03-04
      String.format("%tR", new Date())   //15:49
      String.format("%tT", new Date())   //15:49:34
      String.format("%tc", new Date())   //星期五 三月 04 15:49:34 CST 2011
      String.format("%tD", new Date())  //03/04/11
      String.format("%td", new Date())   //04

    //格式化日期06-07-2016 -可以换成/,%1$tm等的位置也可以交换

    public static void main(String[] args) {
      String s = String.format("%1$tm-%1$td-%1$tY", new Date()); 
      
    System.out.println(s);
    }

    占位符%1$s

        public static void main(String[] args) {
            String s = String.format("这位是%2$s,那位是%1$s", "小明","小黄");
            System.out.println(s);
        }

    格式化数字

    //格式化数字
        public static void main(String[] args) {
            //%[argument_index$][flags][width][.precision]conversion
            //%[argument_index$] : %1$
            //flag:, 金额千分位隔开
            //conversion : d 代表十进制展示
            String s = String.format("%1$,d", 12302562);
            System.out.println(s);
        }

    小数点后保留两位

    //精度2位,保存到小数点后2位
        public static void main(String[] args) {
            //%[argument_index$][flags][width][.precision]conversion
            //%[argument_index$] : %1$
            //[.precision] : .2f f表示传入的数字是浮点型
            String s = String.format("%1$.2f", 12.12555);
            System.out.println(s);
        }

    位数不够向前补0

        //位数不够向前补0
        public static void main(String[] args) {
            //%[argument_index$][flags][width][.precision]conversion
            //%[argument_index$] : %1$
            //[flags] : 0     不够了补0
            //[width] : 5  字符串长度为5
            //conversion : d 结论被格式化为十进制整数
            String s = String.format("%1$05d", 123);
            System.out.println(s);
        
        }

    位数不够后面补空格,包含中文也可以,如"java格式化"

    //位数不够补空格
        public static void main(String[] args) {
            //%[argument_index$][flags][width][.precision]conversion
            //%[argument_index$] : %1$
            //[flags] : - 在最小宽度内左对齐
            //[width] : 8 8位
            //conversion : s 代表字符串
            String s = String.format("%1$-8s", "abd");
            System.out.println(s);
            //char[] charArray = s.toCharArray();
            //System.out.println("charArray.length = "+ charArray.length);

     

  • 相关阅读:
    Linux Enterprise Cluster NOtes Ch4 同步:ssh和rsync
    e805上不安装中文外挂支持中文,很简单而且实用
    ARM的一些概念性问题
    C#调用WORD处理的小项目 转
    ASP.NET面试题
    .net清除cookie代码|.net为什么不能清除cookie|.net cookie 过期代码
    c#字符串转数字的函数|c#字符串转数字的无错函数|c#字符串转数字的最好函数
    Wiki简介
    new 和override 重写区别
    禁用IE的后退按钮|显示网页已过期|几种语言的实现方法|c#|javascript|html
  • 原文地址:https://www.cnblogs.com/lonely-buffoon/p/5567837.html
Copyright © 2020-2023  润新知