c# - 否定空合并运算符

标签 c# null-coalescing-operator

我有一堆字符串需要使用 .Trim(),但它们可以为空。如果我可以做类似的事情会更简洁:

string endString = startString !?? startString.Trim();

如果左边的部分不为空,则基本上返回右边的部分,否则只返回空值。我刚刚结束了使用三元运算符,但是是否可以为此目的使用 null 合并运算符?

最佳答案

您可以创建一个扩展方法,该方法在尝试修剪值时返回 null

public String TrimIfNotNull(this string item)
{
   if(String.IsNullOrEmpty(item))
     return item;
   else
    return item.Trim();
}

请注意,您不能将其命名为 Trim,因为扩展方法无法覆盖实例方法。

关于c# - 否定空合并运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2852875/

相关文章:

c# - 在大型文本文件中定位包含特定单词的行的最快方法

c# - 模拟 Controller 上下文 asp 4.5

c# - 有什么方法可以使用 Xamarin Forms 的设计器吗?

c# - 为什么空合并运算符 (??) 在这种情况下不起作用?

C# ??空合并运算符

php - 带类型转换的空合并运算符

PHP null合并+三元运算符奇怪的行为

c# - 使用 IJSRuntime 在 blazor 中包装引导模式

c# - 如何在异步方法中实现 InvokeRequired UI 模式?

c# - 这个内联空检查和加法评估的顺序是什么