dddddddddddddddddddddddddddddddddddddddddddddddddddddddd
1.String.split的性能問(wèn)題
String.split(正則表達(dá)式),在大量調(diào)用時(shí)會(huì)有性能問(wèn)題,對(duì)比了substring實(shí)現(xiàn)分隔與split,性能差10倍左右。
2.在進(jìn)行數(shù)字內(nèi)容copy時(shí),可以考慮使用System.arraycopy(),性能差別不大,代碼更簡(jiǎn)潔
String[] array1 = new String[]{};
String[] array2 = new String[]{};
for (int i = 0; i < array1.length; i++) {
array2[i] = array1[i];
}
---->>>>
System.arraycopy(array1, 0, array2, 0, array1.length);
3. 使用StringBuilder而不是StringBuffer
任何變量聲明為java.lang.StringBuffer可以考慮使用java.lang.StringBuilder,StringBuilder是非線程安全的,所以效率更高一些。
StringBuffer content = new StringBuffer();
---->>>>
StringBuilder content = new StringBuilder();
4.String變量的size()==0可以使用isEmpty()替換
在判斷一個(gè)空字符串時(shí),調(diào)用size()==0可以考慮使用.isEmpty()替換。
if(userName.size()==0) {
}
---->>>>
if(userName.isEmpty()) {
}