자바 문자열 연결
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 를 사용 하 는 것 이 좋 습 니 다.
그렇지 않 으 면 읽 기 편 하도록 + 를 직접 사용 할 수 있다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
.NET 에서 string 과 StringBuilder 의 문자열 연결 기능 비교이것 은 사실상 StringBuilder 가 불필요 한 공간 을 신청 하려 는 의도 에 가장 부합 되 고 가장 좋 은 효 과 를 거 둘 수 있 는 상황 이다.구체 적 인 상황 은 이 렇 습 니 다.StringBuil...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.