不用使用String的構造函數,可能的話直接使用字符串。
兩個特例:
1)想把char []轉換為一個String,
2) 使用一個大的String對象的substring()方法;
String.equals() 比 String.equalsIgnoreCase()要快;
盡量使用StringBuilder來構造一個String,而不是“+”操作符和String.concat() (除非是一個表達式,String s = a + b + c);
StringBuilder是不同步的(not synchronized ),所以要比StringBuffer快;
在String[Buffer|Builder]構造函數中加上容量參數,因為創建一個太小的buffer會降低性能;
String.length()==0比String.equals("")要快。使用Java 6時,String.isEmpty()更快;
調用String.toString()是沒有意義的;
由于String是不可變的,所以String的方法中,所有返回修改過的String的都是返回了一個新的實例;
String.split(regex)事實上簡單的調用了Pattern.compile(regex).split(this, limit),且每次compile()都會返回一個新Pattern。所以如果頻繁調用split的話,最好創建單個Pattern實例并重復使用來取代split()。
以上就是本文要給大家分享的內容了,希望大家能夠喜歡。
請您花一點時間將文章分享給您的朋友或者留下評論。我們將會由衷感謝您的支持!