|
String е най-вероятната променлива, използвана в Java програмирането, може би мислите, че няма какво да кажете, просто го вземете, но обработката на низове особено изисква нашето внимание, защото случайното създаване на голям брой инстанции на низове създава сериозни проблеми с ефективността на системата. Например, нека направим тест, за да сравним ефективността на изпълнение на класа String и StringBuffer: Нашият учител каза: Всеки път, когато се добави String, той отново и отново иска пространство от паметта, което е много неефективно Всеки път, когато се добавя StringBuffer, няма нужда да се иска пространство от паметта наведнъж, защото StringBuffer изисква много памет от самото начало, което е много ефективно.
- import java.util.Date;
- public class test {
- /**
- * @param args
- */
- public static void main(String[] args) {
- // 武软论坛 www.itsvse.com
- Date da=new Date();
- System.out.println(da.toLocaleString());
- System.out.println("系统时间");
-
- String str1="1";
- for(int i=1;i<100000;i++){
- str1=str1+"1";
- }
- da=new Date();
- System.out.println(da.toLocaleString());
- System.out.println("String运行完时间");
-
- StringBuffer str2=new StringBuffer(1000);
-
- for(int i=1;i<100000;i++){
- str2.append("1");
- }
- da=new Date();
- System.out.println(da.toLocaleString());
- System.out.println("StringBuffer运行完时间");
-
- }
- }
Копирай код
|