1. 程式人生 > >String.format() 字串格式化 例項

String.format() 字串格式化 例項

public class StringFormat {

public static void main(String[] args) {
//test String format all function
//%s  字串型別
String string =String.format("hi,%s", "tom");
//%c  %C 字元型別
System.out.println(String.format("%c", 'a'));
System.out.println(String.format("%C", 'a'));
//%b 布林型別
System.out.printf("%b %n",1>12);
System.out.printf("%B %n",1>12);

//     %d 整數型別(十進位制)
System.out.printf("%05d %n",99);
//%x 十六進位制
System.out.printf("%05x %n",99);
//%o 八進位制
System.out.printf("%o %n",99);
//%f 浮點型別
System.out.printf("%.2f %n",9.99);
System.out.printf("%.1f %n",9.99);
//不要四捨五入
DecimalFormat format = new DecimalFormat(".##");
System.out.println(format.format(9.99));
System.out.printf("50元的書打8.5折扣是:%f 元%n", 50*0.85);  

//%a十六進位制浮點型別
System.out.printf("50元的書打8.5折扣是:%a 元%n", 50*0.85);  
//%e指數型別
System.out.printf("50元的書打8.5折扣是:%e 元%n", 50*0.85);
//%g通用浮點型別(f和e型別中較短的)
System.out.printf("50元的書打8.5折扣是:%g 元%n", 50*0.85);
//%h 雜湊碼
System.out.printf("%h %n","dfasasdfdaasfdafasfafdasfdsafdaadfaadfsssssssssssssssssssssssssssssssssssssssssss");
//%%百分比型別

System.out.printf("%d%% %n",85);
System.out.println("-------------------------------------------------------------------------------");
//特殊符號的使用
//+為正數或者負數新增符號
System.out.println(String.format("%+d",15));
System.out.println(String.format("%d",-15));
//注意- 標識左對齊,不是負號
System.out.println(String.format("|%-5d|",15));
//0  數字前面補0
System.out.println(String.format("%05d",15));
//空格  在整數之前新增指定數量的空格
System.out.println(String.format("% 4d",15));
//System.out.println(String.format("% 4s","abc"));  //報錯只針對整數使用


//逗號   以“,”對數字分組
System.out.println(String.format("%,d",99999999));
System.out.println(String.format("%,f",9999.99));

//(使用括號包含負數
System.out.println(String.format("%(f", -99.99));


//如果是浮點數則包含小數點,如果是16進位制或8進位制則新增0x或0
System.out.println(String.format("%#x", 99));
System.out.println(String.format("%#o", 99)); //沒顯示


//<   格式化前一個轉換符所描述的引數
System.out.println(String.format("%f", 99.45));
//System.out.println(String.format("%<3.2f", 99.45));//


//被格式化的引數索引
System.out.println(String.format("%1$d%2$s",99,"abc" ));
System.out.println("-----------------------------------Time-Date-------------------------------------------");
// c 包含全部的日期和時間資訊
Date date = new Date();
System.out.println(String.format("%tc", date));
//F “年-月-日”格式 2007-10-27
System.out.println(String.format("%tF", date));
//D “月/日/年”格式 10/27/07
System.out.println(String.format("%tD", date));
//r “HH:MM:SS PM”格式(12時制)
System.out.println(String.format("%tr", date));
//T “HH:MM:SS”格式(24時制)
System.out.println(String.format("%tT", date));
//R “HH:MM”格式(24時制)
System.out.println(String.format("%tR", date));
//拼裝
System.out.println(String.format("%tF", date)+" " +String.format("%tT", date) );
System.out.println("-----------------------------------Time-Date-------------------------------------------");
}
}