c# - 字符串比较 null 和 empty 是否相等

标签 c#

使用 C# 和 .NET 3.5,处理这种情况的最佳方法是什么。我有数百个字段可以从各种来源(主要是字符串)进行比较。有时源将字符串字段返回为 null,有时返回为空。当然,有时字段中会有文本。我当前对 strA != strB 的比较并没有削减它,因为 strA 为 null 而 strB 为 "",例如。我知道我可以执行 string.IsNullOrEmpty,这会导致双重比较和一些丑陋。有没有更好的方法来处理这个问题?我想到了扩展方法,但你不能扩展运算符。

我想我正在寻找一种性感的方式来做到这一点。

最佳答案

不会消除额外的潜在比较,但对于性感因素,您可以使用如下内容:

(strA ?? "") == (strB ?? "")

或稍微不那么性感但更可取的形式:

(strA ?? string.Empty) == (strB ?? string.Empty)

关于c# - 字符串比较 null 和 empty 是否相等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1797462/

相关文章:

c# - 将 WPF 网格更改为原点位于左下角

c# 将图像从 WPF 发送到 WebAPI

c# - 为什么它更好(返回 IList 而不是返回列表)?

c# Ionic.zip - 如何提取受密码保护的 zip

c# - 模拟 IDbSet GetEnumerator 时 LINQ 失败

c# - 如何获取类(class)名称

c# - SSIS:通过SSIS执行Ironpython或Ironruby脚本

c# - 由于内部错误 : Could not initialize class mono. android..D3DImageFactory,CreateSession 操作失败

c# - Facebook Graph API-offline_access 已弃用

c# - Windows.Form 不触发 keyDown 事件