자바의 toString() 메소드 안에서 StringBuilder 클래스를 사용하는 것과 문자열 연결 연산자를 사용하는 것의 차이가 무엇인가요?


아래의 두 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개의 필드 값만을 가지고 문자열을 만들고자 할 때, 어떤 방법이 더 좋은지를 알고 싶습니다.

  • 2016년 05월 20일에 작성됨

조회수 93


1 답변


좋아요
0
싫어요
채택취소하기

소스 코드의 표현이 좀 더 짧고 간결하기 때문에 첫 번째 방법을 더 선호합니다. 그리고 자바 컴파일러는 실제로 첫 번째 방법을 두 번째 방법으로 변환해서 컴파일 합니다. 그래서 둘 사이의 성능 차이는 없습니다.

  • 2016년 05월 21일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close