7、StringBuffer與日期相關類
StringBuffer類
1、 String類的內容一旦宣告就不可以改變,如果改變其實是換了一個String物件,如果要改變字串內容怎麼辦,可以使用StringBuffer類
2、 因為String類改變是通過改變String物件來實現內容的變化,而StringBuffer則是直接改變物件內容,所以從效能上考慮應儘量多使用StringBuffer來處理字串
對比以下兩種方式大量修改字串,看看效能的差異有多大
import java.util.Date;
publicclass hello{
publicstaticvoid main(String args[]){
Date t1 =new
//String字串修改一萬次
String x ="a";
for(int i=0; i<10000; i++){
x +="a";
}
Date t2 =new Date();
System.out.println("String loop 10000 times, costmillisecond : "+(t2.getTime()-t1.getTime()));
//StringBuffer字串修改一萬次
StringBuffer y =new StringBuffer();
for(int i=0; i<10000; i++){
y.append("a");
}
Date t3 =new Date();
System.out.println("StringBuffer loop 10000 times, costmillisecond : "+(t3.getTime()-t2.getTime()));
}
}
時間相關類
1、 Date,日期類,需要引用包,import java.util.Date;
2、 Calendar,日曆類,引用包,import java.util.Calendar;
3、 DateFormat,日期格式化類,引用包,import java.text.DateFormat;
4、 SimpleDateFormat,簡單日期格式化類,引用包,import java.text.SimpleDateFormat;
5、 一般只使用Date與SimpleDateFormat類即可,如下
import java.util.Date;
import java.text.SimpleDateFormat;
publicclass hello{
publicstaticvoid main(String args[])throws Exception{
//宣告時間格式
SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-ddHH:mm:ss SSS");
//將時間格式化為日期字串
Date d =new Date();
System.out.println(sdf.format(d));
//將字串轉換為時間物件,再將時間物件格式化為字串
d = sdf.parse("2017-08-18 08:08:08 888");
System.out.println(sdf.format(d));
}
}