C# 空值結合運算子 - ??

January 20, 2023

?? 在 C# 中,被稱為空值結合運算子 (null coalescing operator)。

用法

StringBuilder log = oldLog ?? new StringBuilder();

相當於

StringBuilder log = oldLog != null ? oldLog : new StringBuilder();

也可拆解為

StringBuilder log;
if(oldLog != null){
    log = oldLog;
}
else{
    log = new StringBuilder();
}