문자열을 연결하는 가장 효율적인 방법은 무엇입니까?
StringBuilder
사용 사례 에 대한 자세한 정보는 여기를 참조하십시오 .
String.Format
입니다. 스테로이드 와 같습니다 . 어떤 성능 현명,보다 라이너에 작은 조금 느린 +
및 String.Concat
이기는하지만보다 느리게,하지만 훨씬 더보다 StringBuilder
다수의 호출에. 실제로, 성능 차이는 연결하는 한 가지 방법 만 선택해야하는 $
경우 다음을 사용하여 문자열 보간을 선택합니다 . 두 가지 방법으로 StringBuilder
도구 상자에 추가 합니다. 이 두 가지 방법으로 설정됩니다.
String.Join
아래 의 대답은 +
정의를 하지 않으며 실제로 말하면 문자열을 연결하는 나쁜 방법이지만 놀랍게도 성능이 빠릅니다. 답은 왜 흥미로운가. String.Concat
그리고 String.Join
두 배열에 따라 행동 할 수 있지만, String.Join
실제로는 더 빠르다. 분명히 문자열보다 먼저 문자열 길이를 계산 한 다음 UnSafeCharBuffer를 사용하여이 지식으로부터 이익을 얻는 문자열을 구성한다는 점 과 비슷하게 작동하기 때문에 String.Join
보다 정교하고 최적화 되어 있습니다. String.Concat
StringBuilder
String.Join
또한 자원 비효율적 인 권리를 보인다 배열을 구성 할 필요? ... 밝혀 +
과 String.Concat
그 성분에 대한 구조 배열 어쨌든. 따라서, 수동 배열을 생성하고 그것을 위해 먹이 String.Join
하지만 ... 비교적 빠른 StringBuilder
여전히 능가 String.Join
하면서 모든 실용적인 방법에 대한에 $
약간 느리고 훨씬 빠르게 긴 문자열에서입니다 ... 그것을 사용 어색하고 추한 것을 언급하지 않기 위하여 String.Join
당신이있는 경우 그 자리에 배열을 만들 수 있습니다.