这是我经常遇到的一个案例,我想知道是否有人有更好更简洁的方法来做到这一点。
假设我有一个可以为空的类型的变量“x”。例如:字符串、int? 或 DateTime?
我想对 x 做一些事情,我需要将 x 格式化为字符串,但我不能在 x 上调用 .ToString() 或其他方法,因为 x 可能为空。
是的,我可以做类似的事情
if(x == null)
{
Console.WriteLine("empty");
}
else
{
Console.WriteLine(x.ToString("G"));
}
或者
Console.WriteLine("{0}", x == null? "empty" : x.ToString("G"));
但我正在寻找更短的东西。也许什么都不存在,但我想我会问并开始对话。
我对此感兴趣的一个原因是因为我经常有大量变量,我将数据从一个类移动到另一个类或类似的东西,我需要应用一些格式。
因此,除了 x 之外,我还有 a、b、c、... z 并且我必须检查每个是否为 null 并对每个应用格式,它们是各种类型的并且需要不同的格式。更短更容易复制和粘贴的东西,只需对每一行进行最小的更改就可以了。
那么有没有人为此使用任何聪明的技巧?
我也考虑过??运营商,但我似乎找不到任何好的方法来应用它。乍一看,它似乎是专为这种情况而设计的,但实际上并没有任何帮助。
只要您不需要应用任何格式,它就真的有用。