옵션 |
|
제가 알기로는 문자열이 변하지 않으면 String을 사용하고 변하게 되면 StringBuilder를 사용하라고 배웠던 기억이 있거든요.
속도 및 객체 생성 등 StringBuilder가 유리하다고 알고 있어요.
인터넷으로 찾아봐도 속도는 String < StringBuffer < StringBuilder 라고 하고 있구요...
근데 안드로이드 스튜디오를 다운로드를 받아서 사용중인데,
사용하다 보면 노랑 전구모양 나오면 최적화 해주겠다고 눌러 보라고 하더라구요.
그래서 눌러보았더니 StringBuilder로 만든 문자열을 String 과 + 연산으로 변환 하더라구요...
여기서 질문좀 드릴꼐요.
제가 알고 있는 유리한 코드
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("(");
sb.append(id).append(",");
sb.append(kind).append(",");
sb.append(name).append(",");
sb.append(description);
sb.append(")");
return sb.toString();
}
안드로이드 스튜디오가 최적화한 코드
@Override
public String toString() {
return "(" + id + "," + kind + "," + name + "," + description + ")";
}
어떤게 맞는 건가요?
아.. 안드로이드 스튜디오는 인텔리J라는 툴을 기반으로 만들었다고 하더라군요...