Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Gli operatori di concatenazione uniscono più stringhe in una singola stringa. Esistono due operatori di concatenazione, +
e &
. Entrambe eseguono l'operazione di concatenazione di base, come illustrato nell'esempio seguente.
Dim x As String = "Mic" & "ro" & "soft"
Dim y As String = "Mic" + "ro" + "soft"
' The preceding statements set both x and y to "Microsoft".
Questi operatori possono anche concatenare String
variabili, come illustrato nell'esempio seguente.
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".
Differenze tra i due operatori di concatenazione
L'operatore + ha lo scopo principale di aggiungere due numeri. Tuttavia, può anche concatenare operandi numerici con operandi stringa. L'operatore +
dispone di un set complesso di regole che determinano se aggiungere, concatenare, segnalare un errore del compilatore o generare un'eccezione di runtime InvalidCastException .
L'operatore & è definito solo per String
gli operandi e estende sempre gli operandi a String
, indipendentemente dall'impostazione di Option Strict
. L'operatore &
è consigliato per la concatenazione di stringhe perché è definito esclusivamente per le stringhe e riduce le probabilità di generare una conversione imprevista.
Prestazioni: String e StringBuilder
Se si esegue un numero significativo di manipolazioni su una stringa, ad esempio concatenazioni, eliminazioni e sostituzioni, le prestazioni potrebbero trarre vantaggio dalla StringBuilder classe nello spazio dei System.Text nomi. È necessario un'istruzione aggiuntiva per creare e inizializzare un StringBuilder oggetto e un'altra istruzione per convertire il valore finale in un String
oggetto , ma è possibile recuperare questo tempo perché StringBuilder può essere eseguita più velocemente.