Operadores de concatenação no Visual Basic

Os operadores de concatenação unem várias cadeias de caracteres em uma única cadeia de caracteres. Existem dois operadores de concatenação, + e &. Ambos realizam a operação de concatenação básica, como mostra o exemplo a seguir.

Dim x As String = "Mic" & "ro" & "soft"
Dim y As String = "Mic" + "ro" + "soft"
' The preceding statements set both x and y to "Microsoft".

Esses operadores também podem concatenar variáveis String, como mostra o exemplo a seguir.

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".

Diferenças entre os dois operadores de concatenação

O Operador + tem a finalidade principal de adicionar dois números. Entretanto, ele pode também concatenar operandos numéricos com operandos de cadeia de caracteres. O operador + possui um conjunto complexo de regras que determinam se adicionam, concatenam, sinalizam um erro do compilador ou emitem uma exceção InvalidCastException de tempo de execução.

O Operador & é definido somente para operandos String e ele sempre amplia seus operandos para String, independentemente da configuração de Option Strict. O operador & é recomendado para concatenação de cadeia de caracteres por ser definido exclusivamente para cadeias de caracteres e reduz suas chances de gerar uma conversão indesejada.

Desempenho: String e StringBuilder

Se você realizar um número significativo de manipulações em uma cadeia de caracteres, como concatenações, exclusões e substituições, seu desempenho poderá se beneficiar da classe StringBuilder no namespace System.Text. Ela usa uma instrução extra para criar e inicializar um objeto StringBuilder e outra instrução para converter seu valor final em uma String, mas você pode recuperar esse tempo, pois StringBuilder pode ser executado com mais rapidez.

Confira também