1. 程式人生 > >7、StringBuffer與日期相關類

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

Date();

//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));

}

}