Java的格式化輸出


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》


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM