Các nhà điều hành +
và &
là không giống hệt nhau trong VB.NET.
Sử dụng toán tử &
cho biết ý định của bạn để nối chuỗi, trong khi toán tử +
cho biết ý định của bạn để thêm số. Sử dụng toán tử &
sẽ chuyển đổi cả hai mặt của thao tác thành chuỗi. Khi bạn có các loại hỗn hợp (một bên của biểu thức là một chuỗi, một mặt khác là một số), việc sử dụng toán tử của bạn sẽ xác định kết quả.
1 + "2" = 3 'This will cause a compiler error if Option Strict is on'
1 & "2" = "12"
1 & 2 = "12"
"text" + 2 'Throws an InvalidCastException since "text" cannot be converted to a Double'
Vì vậy, phương châm của tôi (ngoài tránh các loại pha trộn như thế) là sử dụng &
khi concatenating chuỗi, chỉ để chắc chắn rằng ý định của bạn là rõ ràng đối với trình biên dịch, và tránh không để tìm thấy lỗi liên quan đến sử dụng toán tử +
để ghép nối.
Có thể trùng lặp * [Sự khác biệt giữa + và & để tham gia chuỗi trong VB.NET] (http://stackoverflow.com/questions/734600/the-difference-between-and-for-joining-strings- trong vb-net) *. –