Java入門之String.format()函數格式化字符串

編程語言 Java 騰訊TM 技術 路人宅 2017-04-11

字符串被廣泛應用於Java編程之中,在Java中字符串是屬於對象的,Java提供了String類的創建和操作字符串函數。輸出格式化數字可以使用printf()和format()方法。String類使用靜態方法format()返回一個String對象而不是PrintStream對象。String類的靜態方法format()能用來創建可複用的格式化字符串,而不僅僅是用於一次打印輸出,下面為大傢俱體講解一下使用String.format()格式化字符串。

使用指定格式字符串格式化字符串參數,具體Java源碼如下:

public static String format(String format, Object ... args) {

return new Formatter().format(format, args).toString();

}

使用指定的語言環境(本地語言環境),格式字符串返回一個格式化字符串和參數,具體Java源碼如下:

public static String format(Locale l, String format, Object ... args) {

return new Formatter(l).format(format, args).toString();

}

1)不同轉換符實現不同數據類型到字符串的轉換,具體如下所示:

轉換符說明示例

%s字符串類型"mingrisoft"

%c字符類型'm'

%b布爾類型true

%d整數類型(十進制)99

%x整數類型(十六進制)FF

%o整數類型(八進制)77

%f浮點類型99.99

%a十六進制浮點類型FF.35AE

%e指數類型9.38e+5

%g通用浮點類型(f和e類型中較短的)

%h散列碼

%%百分比類型%

%n換行符

%tx日期與時間類型(x代表不同的日期與時間轉換符

2)日期事件字符串格式化,具體如下所示:

轉換符 說明 示例

c包括全部日期和時間信息星期六 十月 8 13:21:20 CST 2017

F“年-月-日”格式2017-04-10

D“月/日/年”格式10/04/10

r“HH:MM:SS PM”格式(12時制)13:21:20 下午

T“HH:MM:SS”格式(24時制)13:21:24

R“HH:MM”格式(24時制)13:21

3)時間的字符串格式化,具體如下所示:

轉換符 說明 示例

H2位數字24時制的小時(不足2位前面補0)15

I2位數字12時制的小時(不足2位前面補0)03

k2位數字24時制的小時(前面不補0)15

l2位數字12時制的小時(前面不補0)3

M2位數字的分鐘(不足2位前面補0) 03

S2位數字的秒(不足2位前面補0) 09

L3位數字的毫秒(不足3位前面補0) 015

N9位數字的毫秒數(不足9位前面補0) 562000000

p小寫字母的上午或下午標記 中:下午英:pm

z相對於GMT的RFC822時區的偏移量 +0800

Z時區縮寫字符串 CST

s1970-1-1 00:00:00 到現在所經過的秒數1193468128

Q1970-1-1 00:00:00 到現在所經過的毫秒數1193468128984

下面舉一些常用的案例,執行代碼如圖:

Java入門之String.format()函數格式化字符串

代碼圖

為了方便大家,具體代碼如下:

package com.test;

import java.util.Date;

import java.util.Locale;

/**

* 感興趣的小夥伴們,請關注路人宅

*/

public class Test {

public static void main(String args[]) {

String str = null;

str = String.format("Hi %s", "張三");

System.out.println(str);

str = String.format(Locale.ENGLISH,"Hi %s", "Zhang San");

System.out.println(str);

Date date = new Date();

System.out.printf("年-月-日格式:%tF%n",date); //printf()函數可以指定類型

str = String.format("%tH", date);

str += String.format(":%tM", date);

str += String.format(":%tS", date);

System.out.println("24時制的時分秒(不足2位前面補0):" + str);

}

}

輸出結果,如下所示圖:

Java入門之String.format()函數格式化字符串

結果圖

相關推薦

推薦中...