[Java] String 클래스의 문제점

String 클래스

  • 문자열을 다룰 때 사용
  • 불변 클래스

String 문자열과 문자열을 더할 때

		String str3 = str1 + str2;
		System.out.println(str3);
		
		String str4 = new StringBuffer().append(str1).append(str2).toString();
		System.out.println(str4);
  • 내부적으로는 str4와 같은 코드가 실행됨
  • 실제로는 StringBuffer 객체 생성 > append 메소드에 의해 문자열 누적 > 누적된 문자열을 toString()메소드를 통해 다시 String 객체로 변환 및 리턴
  • 만약 반복문 안에서 문자열을 더하게 되면 성능 저하됨
  • Java는 new 연산자 많이 사용될 수록 속도 느려지기 때문
  • StringBuffer 클래스를 직접 적절히 활용하는 것이 훨씬 효과적

좋은 웹페이지 즐겨찾기