String str1 = "hello world";
String str2 = str1.substring(5);
System.out.println(str1);
System.out.println(str2);
// String클래스를 사용할 때 가장 문제가 발생하는 경우는 다음과 같은 코드를 사용할 때 입니다.
String str3 = str1 + str2;
System.out.println(str3);
문자열과 문자열을 더하게 되면 내부적으로 다음과 같은 코드가 실행됩니다.
String str4 = new StringBuffer().append(str1).append(str2).toString();
System.out.println(str4);
문자열을 반복해서 더하는 것은 성능상 문제가 생길 수 있으니 반드시 피하도록 합시다.
String str5 = "";
for(int i = 0; i < 100; i++) {
str5 = str5 + "*";
}
System.out.println(str5);
위 코드는 아래와 같이 바꾸는 것이 더 효율적이다.
StringBuffer sb = new StringBuffer();
for(int i = 0; i < 100; i++) {
sb.append("*");
}
System.out.println(sb.toString());