String和StringBuffer之概覽
非可變對象一旦創建之后就不能再被改變,可變對象則可以在創建之后被改變。String對象是非可變對象,StringBuffer對象則是可變對象。為獲得更佳的性能你需要根據實際情況小心謹慎地選擇到底使用這兩者中的某一個。下面的話題會作詳細的闡述。(注意:這個章節假設讀者已經具備Java的String和StringBuffer的相關基礎知識。)
創建字符串的較佳途徑
你可以按照以下方式創建字符串對象:
1. String s1 = "hello";
String s2 = "hello";
2. String s3 = new String("hello");
String s4 = new String("hello");
上面哪種方式會帶來更好的性能呢?下面的代碼片斷用來測量二者之間的區別。
StringTest1.java
package com.performance.string;
/** This class shows the time taken for creation of
* String literals and String objects.
*/
原文轉自:http://www.anti-gravitydesign.com