我会经常使用这段代码来比较一个字符串:
if(!string.IsNullOrEmpty(str1) && str1.Equals(str2)){
//they are equal, do my thing
}
这首先处理 null 情况等。
是否有一种更简洁的方法来进行字符串比较,也许是使用一个方法调用来处理可能的空值?我只是想知道如果测试值为空,则字符串不相等。
(我有似曾相识的感觉,我以前可能问过这个问题,如果是这样,我深表歉意)
更新:在我的例子中,str2 是一个已知的比较好的字符串,所以我不需要检查它是否为 null。 str1 是可能为 null 的“未知”字符串,所以在 str1 是 null 的情况下我想说“str1 不等于 str2”...
最佳答案
与 Java 不同,C# 字符串覆盖 ==
运算符:
if (str1 == str2)
如果你想要一个不区分大小写的比较:
if (string.Equals(str1, str2, StringComparison.OrdinalIgnoreCase))
关于c# - 字符串相等与 null 处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15188079/