|
String — це найімовірніша змінна, що використовується в програмуванні на Java, можливо, ви думаєте, що нема що сказати, просто підхопіть її, але обробка рядків особливо потребує нашої уваги, бо випадкове створення великої кількості екземплярів рядків створює серйозні проблеми з ефективністю системи. Наприклад, проведемо тест для порівняння ефективності виконання класу String і StringBuffer: Наш учитель сказав: Кожного разу, коли додається рядок, він знову і знову запитує проміжок у пам'яті, що дуже неефективно Кожного разу, коли додається 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运行完时间");
-
- }
- }
Копія коду
|