相当于C#中的Java的Optional.orElse

Rya*_*ach 6 c# java

我正在寻找在null的情况下提供默认值的好语法.我已经习惯在Java中使用Optional而不是null,并且想知道C#的更好的可空类型是否具有等效性?

自选

Optional<String> x = Optional<String>.absent();
String y = x.orElse("NeedToCheckforNull"); //y = NeedToCheckforNull
Run Code Online (Sandbox Code Playgroud)

@nullable

String x = null;
String y = x == null ? "NeedToCheckforNull" : x ; //y = NeedToCheckforNull
Run Code Online (Sandbox Code Playgroud)

如何在C#中使上述内容更具可读性?

Javascript将允许y = x | "NeedToCheckforNull"

d.m*_*ada 8

您可以使用该??运算符.

您的代码将更新为:

string x = null;
string y = x ?? "NeedToCheckforNull"; 
Run Code Online (Sandbox Code Playgroud)

请参阅:https://msdn.microsoft.com/en-us/library/ms173224(v = vs.100).aspx