Skip to content
February 6, 2012 / ahriman hpc mode

Null coalescing operator в C#. Зачем это нужно?

Всё время забываю, как записывается тернарный оператор, и в очередной раз гуглил. Нагуглил, да не совсем тернарный, но очень даже пригодившийся в моей ситуации оператор, а именно null-coalescing operator.

Это бинарный оператор, который является частью синтаксиса некоторых языков программирования типа C# и Perl.

Посмотрим на моем примере: у меня был List, и, если этот List == null, мне надо было возвратить новый экземпляр List, иначе – OK. Можно это, конечно, сделать и тернарным оператором:

public List<int> Method()
{
List<int> list = OtherMethod();
return (null != list ? list : new List<int>);
}

А можно с помощью null-coalescing оператора:

public List<int> Method()

{

return OtherMethod() ?? new List<int>();

}

 

Это ли не прекрасно.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: