空条件运算符主要为了阻止试图访问一个空对象的成员时抛出的空引用异常。
例如,下面的几行代码在Students数组为空时都会产生运行时异常。
C#
Article[] articles = null;
int articlesCount = articles.Length;
Article fristArticle = articles[0];
await Console.Out.WriteLineAsync($"{articles},{articlesCount},{fristArticle}");
![](https://ichistudio.cn/wp-content/uploads/2024/04/图片-40.png)
你可以使用空条件运算符来避免空引用异常,如以下示例所示。
C#
Article[] articles = null;
int? articlesCount = articles?.Length;
Article fristArticle = articles?[0];
await Console.Out.WriteLineAsync($"{articles},{articlesCount},{fristArticle}");
![](https://ichistudio.cn/wp-content/uploads/2024/04/图片-41-1024x286.png)