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 básica de concatenação, 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 String
variáveis, 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 o objetivo principal de adicionar dois números. No entanto, ele também pode concatenar operandos numéricos com operandos de cadeia de caracteres. O +
operador tem um conjunto complexo de regras que determinam se deve adicionar, concatenar, sinalizar um erro de compilador ou lançar uma exceção de tempo InvalidCastException de execução.
O operador & é definido apenas para String
operandos e sempre amplia seus operandos para String
, independentemente da configuração de Option Strict
. O &
operador é recomendado para concatenação de cadeias de caracteres porque é definido exclusivamente para cadeias de caracteres e reduz suas chances de gerar uma conversão não intencional.
Desempenho: String e StringBuilder
Se você fizer um número significativo de manipulações em uma cadeia de caracteres, como concatenações, exclusões e substituições, seu desempenho poderá lucrar com a StringBuilderSystem.Text classe no namespace. É necessária uma instrução extra para criar e inicializar um StringBuilder objeto e outra instrução para converter seu valor final em um String
, mas você pode recuperar esse tempo porque StringBuilder pode executar mais rapidamente.