有人可以用简单的英语或伪代码解释三元运算符吗?

jwa*_*112 1 c# syntax ternary-operator conditional-operator

我不理解以下行中使用的语法,除了它遵循似乎被称为三元运算符的基本结构.

string path = args == null || args.Length == 0 ?
    @"C:\GENERIC\SYSTEM\PATH" :
    args[1];
Run Code Online (Sandbox Code Playgroud)

我是这种语法的新手.有人会帮助我把它翻译成真正的英语(或伪代码),就像if语句可以变成"如果那样那样"的方式一样吗?

编辑:谢谢大家的答案,你们都非常乐于助人.不幸的是我只能投票给你们其中一人,但我会投票给你们!

Sys*_*own 5

这相当于

string path;
if(args == null || args.Length == 0)
    path = @"C:\GENERIC\SYSTEM\PATH" ;
else
    path = args[1];
Run Code Online (Sandbox Code Playgroud)

您可以将三元运算符分解为此

VariableToStoreResult = BooleanCondition ? ValueIfConditionIsTrue : ValueIfConditionIsFalse
Run Code Online (Sandbox Code Playgroud)