码迷,mamicode.com
首页 > 编程语言 > 详细

Java的格式化输出

时间:2015-05-21 10:45:05      阅读:227      评论:0      收藏:0      [点我收藏+]

标签:

Java的格式化输出 


 一个方法要进行格式化输出时,需要一个格式字符串(format string)和一个参数列表(arguments)。格式字符串可能包括确定的文本(fixed text)和一个或多个格式说明符(format specifier)。看下面例子:

String s=String.format("Duke‘s Name: %s", name);//format(String format,object arguments)

这是Java的String类的格式化方法,在这个方法中,"Duke‘s Name: %s"是这个方法的第一个参数,也就是格式字符串(format string),其中(%s)是格式说明符,除了这个以外剩下的部分就是确定的文本。name就是参数列表(arguments)。

对于一般情况下来说,格式说明符的语法如下

%[argument_index$][flags][width][.precision]conversion

技术分享

•格式说明符以%符号开头,用相应的参数替换。(%符号可根据\理解,要想输出%符号,格式需要写成这样%%)

•argument_index是一个十进制整数,顾名思义,表示后面参数的位置,例如上面的1$表示name。

•flags是用于控制输出格式,但具体怎么控制还要看末尾的转换符(conversion)。

•width是一个正整数,表明要输出字符的长度。

转换符

技术分享

标志

技术分享

代码:

public class formatDemo {

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        System.out.println("Hello World");

        double x=-10000.0/3.0;

        double y=5000.0/3.0;

        System.out.println(x);

        System.out.printf("%,10.2f\r\n",x);

        System.out.printf("%-,10.2f\r\n",x);

        System.out.printf("%+(,10.2f %2$.3f\r\n",x,y);

        System.out.printf("%+(,10.2f %1$.3f %2$.3f %<f %<.3f\r\n",x,y);

    }

}

 •结果:

技术分享

•日期格式转换:

日期的格式说明符特点是说明符中的conversion是由t开始,加上下表任意字符结束。

技术分享

技术分享

时间是用距离一个固定的时间点的毫秒数(可正可负)表示的,这个点就是所谓的纪元(epoch),它是UTC时间1970年1月1日00:00:00.UTC是 Coordinated Universal Time的缩写,与GMT(Greenwich Mean Time/格林威治时间)一样。Java将保存时间和给时间点命名分开。Date类是用来表示时间点;另一个是日立表示法Calendar类。

摘自《Java核心技术卷I》

Java的格式化输出

标签:

原文地址:http://www.cnblogs.com/kunlbc/p/4518977.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!