今天看到對日期date的格式化,使用SimpleDateFormat格式化日期,以下:orm
// 日期格式化 Date dNow = new Date();對象
SimpleDateFormat ft = new SimpleDateFormat("yyyy.MM.dd 'at' hh:mm:ss ");索引
System.out.println(ft.format(dNow));字符串
無心間新學到一種格式化方法。form
//printf的格式化輸出(第一個參數表示輸出的格式,第二個參數是可變長參數,表示待輸出的對象數據) date
//整數類型格式化(%d:十進制輸出;%o:八進制輸出;%x:十六進制輸出;%n:表示換行) 方法
System.out.printf("%d%n",26); im
System.out.printf("%o%n",26); 數據
System.out.printf("%x%n",26); di
//字符類型格式化(%s:字符串輸出;%S:大寫字符串輸出;1$:表示第一個參數;2$:表示第二個參數)
System.out.printf("%s%n","huadiyatou");
System.out.printf("%S%n","huadiyatou");
System.out.printf("%2$s%1$S%n","huadi","yatou");
//浮點類型格式化(%f:表示浮點類型輸出,還能夠指定小數點位數;%e:科學記數法輸出;%E:大寫的科學計數法輸出)
System.out.printf("%f%.3f%n",12.3f,3.4f);
System.out.printf("%e%n",3.4);
System.out.printf("%E%n",3.4);
//boolean類型(%b:boolean類型輸出)
System.out.printf("true=%b%n",true);
//date類型格式化
Date dTime=new Date();
//(%t後加y:輸出年份(2位)) System.out.printf("%ty%n",dTime);
//(%t後加Y:輸出年份(yyyy)) System.out.printf("%tY%n",dTime);
//(%t後加m:輸出月份) System.out.printf("%tm%n",dTime);
//(%t後加M:輸出時間的分鐘) System.out.printf("%tM%n",dTime);
//(%t後加M:輸出月份(簡稱)) System.out.printf("%tb%n",dTime);
//(%t後加M:輸出月份(完整名稱)) System.out.printf("%tB%n",dTime);
//等價於:System.out.printf("%tm/%td%/%ty%n",dTime); System.out.printf("%tD%n",dTime);
//等價於:System.out.printf("%tY-%tm%-%td%n",dTime); System.out.printf("%tF%n",dTime);
//輸出小時(24進制) System.out.printf("%tH%n",dTime);
//輸出小時(12進制) System.out.printf("%tI%n",dTime);
//輸出秒數 System.out.printf("%ts%n",dTime);
//輸出上午下午 System.out.printf("%tp%n",dTime);
//輸出星期全稱 System.out.printf("%tA%n",dTime);
//輸出星期簡稱 System.out.printf("%ta%n",dTime);
//輸出時間的所有信息 System.out.printf("%tc%n",dTime);
一個格式化字符串能夠指示要格式化的參數的索引,索引必須緊跟在%以後,而且由$終止,例如
System.out.printf("%2$s%1$S%n","huadi","yatou");
也可使用<標誌,表示相同的參數(與前一個參數相同)
System.out.printf("%2$s%<S%n","huadi","yatou");