|
Stringul este cea mai probabilă variabilă folosită în programarea Java, poate crezi că nu ai nimic de spus, doar preia-l, dar procesarea șirurilor necesită în special atenția noastră, deoarece crearea aleatorie a unui număr mare de instanțe de șiruri aduce mari probleme eficienței sistemului. De exemplu, să facem un test pentru a compara eficiența execuției clasei String și a StringBuffer: Profesorul nostru a spus: De fiecare dată când se adaugă String, va cere spațiu din memorie iar și iar, ceea ce este foarte ineficient De fiecare dată când se adaugă StringBuffer, nu este nevoie să se solicite spațiu din memorie simultan, deoarece StringBuffer solicită mult spațiu de memorie de la început, deci este foarte eficient.
- 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运行完时间");
-
- }
- }
Cod de copiere
|