Visual Basic의 연결 연산자
연결 연산자는 여러 문자열을 단일 문자열로 조인합니다. 연결 연산자에는 +와 &가 있습니다. 다음 예제와 같이 두 연결 연산자 모두 기본 연결 연산을 수행합니다.
Dim x As String = "Con" & "caten" & "ation"
Dim y As String = "Con" + "caten" + "ation"
' The preceding statements set both x and y to "Concatenation".
이러한 연산자는 다음 예제와 같이 String 변수를 연결할 수도 있습니다.
Dim a As String = "abc"
Dim d As String = "def"
Dim z As String = a & d
Dim w As String = a + d
' The preceding statements set both z and w to "abcdef".
두 연결 연산자의 차이점
+ 연산자(Visual Basic)의 주 용도는 두 숫자를 더하는 것입니다. 그러나 숫자 피연자와 문자열 피연산자를 연결할 수도 있습니다. + 연산자에는 컴파일러 오류를 더할지, 연결할지, 알릴지 여부를 결정하거나 런타임 InvalidCastException 예외를 throw할지 여부를 결정하는 복잡한 규칙 집합이 포함되어 있습니다.
& 연산자(Visual Basic)는 String 피연산자에 대해서만 정의되며 Option Strict의 설정에 상관없이 항상 피연산자를 String으로 확장합니다. & 연산자는 문자열 전용으로 정의되어 의도하지 않은 변환이 발생할 가능성이 적으므로 문자열 연결에 사용하는 것이 좋습니다.
성능: String 및 StringBuilder
연결, 삭제, 바꾸기와 같은 문자열 조작을 대량으로 수행하는 경우 System.Text 네임스페이스의 StringBuilder 클래스를 사용하여 성능 문제를 해결할 수 있습니다. StringBuilder 개체를 만들어 초기화하고 최종 값을 String으로 변환하기 위해 추가 단계를 수행해야 하지만 StringBuilder는 수행 시간이 빠르므로 추가 단계를 수행하는 데 필요한 시간을 만회할 수 있습니다.