자바 문자열 연결

1376 단어 문자열 맞 춤 법

내 가 + 연산 자 를 사용 하여 문자열 을 맞 출 때마다 누군가가 나 에 게 네가 StringBuffer 를 사용 해 야 한다 고 제기 한다.
저 는 정말 제안 을 하 는 사람 이 먼저 String 류 의 소스 코드 를 보고 싶 습 니 다. 자바 SE 6 부터 + 연산 자 를 통 해 문자열 을 맞 추 는 것 은 StringBuilder 나 StringBuffer 류 와 그들의 append () 방법 으로 이 루어 집 니 다.
 
원 어 는 다음 과 같다.
From java.lang.String source code:
 
The Java language provides special support for the string concatenation operator ( + ), and for conversion of other objects to strings. String concatenation is implemented through the StringBuilder (or StringBuffer ) class and its append method. String conversions are implemented through the method toString , defined by Object and inherited by all classes in Java. For additional information on string concatenation and conversion, see Gosling, Joy, and Steele, The Java Language Specification.
 
 
그러나 이러한 실현 은 자바 c 의 문법 당 해석 에 만 의존 하고 컴 파일 된 class 코드 는 문자열 + 의 연결 에 최적화 되 지 않 았 습 니 다.
따라서 실행 효율 에 있어 문법 설탕 을 분석 한 + 맞 춤 형 코드 는 StringBuilder 나 StringBuffer 와 같은 속도 에 이 르 지 못 합 니 다.
구체 적 인 토론 은 이 게시 물의 토론 을 참고 할 수 있다.
http://www.iteye.com/topic/1040986
 
그래서 구체 적 으로 실제 상황 에 이 르 렀 을 때:
많은 문자열 의 조합 이 필요 한 경우 (예 를 들 어 순환 중) StringBuilder 나 StringBuffer 를 사용 하 는 것 이 좋 습 니 다.
그렇지 않 으 면 읽 기 편 하도록 + 를 직접 사용 할 수 있다.
 
 

좋은 웹페이지 즐겨찾기