てぃぐれのプログラマwiki

ワクワクに従う

?クエスチョンマークの使い方1 Null条件演算子【C#】

経緯

?マークのC#での使い方を押さえておきたい。それによりもっときれいなコードをかくことができるはずだ。

Null条件演算子

三項演算子

Null合体演算子

で使われる。今回はNull条件演算子を押さえたい。

 

 

エラーになるコード

nullがくるとFirst()で参照できなくてエラーになる

First()でエラーになるのはありがち

        IsWaiting = true;

        try
        {
            await Task.Delay(3000,token);
            string test = null;

            await Calling(test);
        }finally
        {
            IsWaiting = false;            
        }
    }

    List<CancellationTokenSource> _cancellationTokenSource = new();

    private async Task Calling(string test)
    {
        Console.WriteLine(test.First());        
    }
 
 

エラーにならないコード

        IsWaiting = true;

        try
        {
            await Task.Delay(3000,token);
            string test = null;

            await Calling(test);
        }finally
        {
            IsWaiting = false;            
        }
    }

    List<CancellationTokenSource> _cancellationTokenSource = new();

    private async Task Calling(string test)
    {
        Console.WriteLine(test?.First());        
    }