|
Eilutė yra labiausiai tikėtinas kintamasis, naudojamas "Java" programavime, galbūt manote, kad nėra ką pasakyti, tiesiog pasiimkite jį, tačiau eilučių apdorojimui ypač reikia mūsų dėmesio, nes atsitiktinis daugybės eilučių egzempliorių sukūrimas sukelia didelių problemų sistemos efektyvumui. Pavyzdžiui, atlikime testą, kad palygintume String klasės ir StringBuffer vykdymo efektyvumą: Mūsų mokytojas sakė: Kiekvieną kartą, kai pridedama eilutė, ji vėl ir vėl prašys vietos iš atminties, o tai yra labai neefektyvu Kiekvieną kartą pridedant "StringBuffer", nereikia iš karto prašyti vietos iš atminties, nes "StringBuffer" nuo pat pradžių reikalauja daug vietos atmintyje, todėl yra labai efektyvus.
- 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运行完时间");
-
- }
- }
Kopijuoti kodą
|