|
문자열은 자바 프로그래밍에서 가장 가능성이 높은 변수입니다. 할 말이 없다고 생각할 수도 있지만, 문자열 처리는 특히 주의가 필요합니다. 많은 문자열 인스턴스를 무작위로 생성하면 시스템의 효율성에 큰 문제가 생기기 때문입니다. 예를 들어, 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运行完时间");
-
- }
- }
코드 복사
|