자바의 toString() 메소드 안에서 StringBuilder 클래스를 사용하는 것과 문자열 연결 연산자를 사용하는 것의 차이가 무엇인가요?
조회수 1508회
아래의 두 toString() 메소드 중 어떤 방법이 더 좋은 방법인가요?
public String toString(){
return "{a:"+ a + ", b:" + b + ", c: " + c +"}";
}
public String toString(){
StringBuilder sb = new StringBuilder(100);
return sb.append("{a:").append(a)
.append(", b:").append(b)
.append(", c:").append(c)
.append("}")
.toString();
}
더 중요한 것은 추가사항 없이 오직 3개의 필드 값만을 가지고 문자열을 만들고자 할 때, 어떤 방법이 더 좋은지를 알고 싶습니다.
1 답변
-
소스 코드의 표현이 좀 더 짧고 간결하기 때문에 첫 번째 방법을 더 선호합니다. 그리고 자바 컴파일러는 실제로 첫 번째 방법을 두 번째 방법으로 변환해서 컴파일 합니다. 그래서 둘 사이의 성능 차이는 없습니다.
댓글 입력