StringBuffer , StringBuilder , String, BufferedWriter,, 비슷비슷하게 생긴게 너모 만타,,
StringBuilder 란 String 객체와 String 객체를 더할때 사용하는 클래스이다.
String str1="1";
Stirng str2="2";
System.out.println(str1+str2);
위의 코드처럼 직접 +
해서 사용해도 되지만 이럴 경우 메모리 할당과 메모리 해제를 발생시켜 더하는 연산이 많아진다면 성능이 안 좋아진다.
하지만, StringBuilder 는 더할때 새로운 객체를 생성하는 것이 아니라 기존의 데이터에 더하는 방식으로 사용하기 때문에 성능 저하가 적음
결론
긴 문자열을 더하거나, 계속해서 문자열을 합칠 있으면 StringBuilder를 사용하자.
StringBuilder sb= new StringBuilder();
sb.append('<'); //더해줄때 사용하는 것
sb.append('djldjdljldjldjd');
System.out.println(sb.toString()); //toString 생략해도 되긴 됨,,
추가적으로 제가 정확하게 몰랐던 것들인데 읽어보면 좋을 것 같습니당
String 객체는 불변(?)이다..?
Java의 String 이야기(1) - String은 왜 불변(Immutable)일까?
효율적인 입출력 팁