Tôi thường sẽ sử dụng mã này để so sánh một chuỗi:Chuỗi bình đẳng với xử lý vô
if(!string.IsNullOrEmpty(str1) && str1.Equals(str2)){
//they are equal, do my thing
}
này xử lý các trường hợp null đầu tiên, vv
Có cách nào sạch để làm chuỗi so sánh, có lẽ với một cuộc gọi phương thức duy nhất sẽ xử lý các giá trị null có thể có? Tôi chỉ đơn giản muốn biết rằng các chuỗi không bằng nhau nếu giá trị thử nghiệm là null.
(Tôi đang gặp DejaVu mà tôi có thể hỏi này trước đây, tôi xin lỗi nếu có)
Cập nhật: Trong trường hợp của tôi, str2 là một chuỗi tiếng tốt để so sánh với, vì vậy tôi don 't cần phải kiểm tra nó cho null. str1 là chuỗi "không xác định" có thể là rỗng, vì vậy tôi muốn nói "str1 không bằng str2" trong trường hợp str1 là null ...
Mã của bạn sai; nó sẽ trả về true nếu 'str1' là null và' str2' thì không. – SLaks
@SLaks Trên thực tế, tôi nghĩ đó là những gì anh ta muốn. Ít nhất dựa trên mô tả –
Tôi có một! trong đó, do đó, nó sẽ chỉ tiếp tục nếu chuỗi để so sánh là KHÔNG null/rỗng. đúng không? –