처음으로 C#으로 작업하기 시작했으며 튜토리얼을 살펴 보았을 때 concatenation (console.writeline("Hello" + user)
사용자는 문자열 변수 임)과 place holder (console.writeline("Hello {0}" , user
)의 차이점은 user가 문자열 변수) 출력 방법. 차이점이 있습니까 아니면 단순히 어떤 방식으로 쉽게 찾을 수 있습니까?C# 출력에서 연결과 자리 표시간에 차이가 있습니까? 아니면 기본 설정입니까?
0
A
답변
2
C#과 관련이 없으므로 많은 언어가 두 가지 스타일을 모두 지원합니다. 후자의 형태는 일반적으로 '더 안전'하다고 생각되지만, 구체적인 이유를 인용 할 수는 없습니다. 항목이 두 개 이상의 장소에 나타나야하거나 형식 문자열을 상수로 저장하려는 경우에 유용합니다. 자세한 정보는이 스레드를보십시오 : When is it better to use String.Format vs string concatenation?.
0
매트가 말한 것처럼 장소 지주는 더 간단한 접근법으로 간주되지만 그 이유는 확실하지 않습니다. (나는 그것에 대해 조사해야합니다). 하지만 그렇습니다 한 가지는 퍼스널 홀딩이 약간의 비용이 드는 작업이고 퍼포먼스 측면에서 연결이라는 것입니다. Jon Skeet이 (가) Blog entry "Formatting Strings"을 확인하십시오.
비록 수천 배 정도의 플레이스 홀더를 사용하는 경우에만 성능이 크게 향상되지만,
1
문자열 연결을 사용하는 것과는 대조적으로 문자열 형식을 사용하는 것은 거의 전적으로 가독성에 관한 것입니다. 실제로 그들은 을 수행하고을 수행하고 심지어 수행 방법도 비슷합니다. 이러한 간단한 예를 들어
모두 괜찮아 보이는,하지만 당신은 훨씬 더 좋은 찾고 끝낼 수있는 형식 문자열에 혼합 값의 많은 복잡한 문자열이있을 때 :
string output = "Hello " + username + ". I have spent " + executionTime + " seconds trying to figure out that the answer to life is: " + output;
:
이
여기에 더 좋은 예입니다
대
는 는관련 문제
- 1. PHP 응용 프로그램 (CakePHP)에서 메모리 사용. 아니면 Linux 설정입니까?
- 2. 클라이언트와 다른 작업을 수행해야합니까, 아니면 수정이 필요한 서버 설정입니까?
- 3. 이것은 올바른 MVC 경로 설정입니까 아니면 다른 방법입니까?
- 4. SignalR 연결과 관련된 기본 질의
- 5. C 문자열 할당 차이가 있습니까?
- 6. m4a mp4 파일 형식 어떤 차이가 있습니까? 아니면 동일합니까?
- 7. C# 클래스 상속, 어떤 ID가이 설정입니까?
- 8. 무엇이 아파치 공통 설정입니까
- 9. 파이썬/C++ - 정밀도 차이가
- 10. 연결과 직접 문자열의 차이점
- 11. 성능에 차이가 있습니까?
- 12. Woocommerce 기본 자리
- 13. C++ 프로그램에서 _asm 코드를 사용하면 차이가 있습니까?
- 14. Java가 같지 않음 (! =) 성능 차이가
- 15. 기본 매개 변수의 이러한 모의 시뮬레이션간에 중요한 기계적 차이가 있습니까?
- 16. 화살과 함수는 어떻게 차이가 있습니까?
- 17. 루프백 (127.0.0.1)은 하드웨어 설정입니까?
- 18. 플랫폼 차이가 있습니까?
- 19. 2 가지 수입간에 차이가 있습니까?
- 20. C 배열의 차이가
- 21. 날짜 차이가 C (초)
- 22. 하나의 데이터베이스 연결과 함수 사용, C++
- 23. Objective-C 범주와 .NET 확장 방법 간에는 어떤 차이가 있습니까?
- 24. SQLBulkCopy : 열 수에 차이가 있습니까?
- 25. Assembly.ExportedTypes와 Assembly.GetExportedTypes() 사이에 차이가 있습니까?
- 26. 차이가
- 27. Ruby에서 "! ="와 "! ~"사이에 차이가 있습니까?
- 28. 생성자 외부에서 인스턴스화간에 차이가 있습니까?
- 29. AES_128_CBC와 AES_128_CBC_SHA 알고리즘간에 차이가 있습니까?
- 30. C++ 정규식과 자리
는'{0} '형식에 사용 는, 또한 예를 들어'문자열 strHold + = strHold + 일부 string' – MethodMan
에 대한'운영자 Overloading'보고 할 수 있습니다
는 문자열을 고려하십시오. 그것을 사용하는 후자의 방법을위한 체재(). –형식 문자열은 읽기 쉽고 수정하기가 쉽습니다. 실제 문자보다 큰 따옴표와 더하기 기호가있는 연결된 문자열을 보는 것은 싫어합니다. – JosephHirn