有人可以解释这行代码吗?

Mis*_*Dei 6 c#

int salesTeamId = person == null ? -1 : person.SalesTeam.Id;
Run Code Online (Sandbox Code Playgroud)

从我可以拼凑到一起:

  1. int SalesTeamId是一个变量,而person被分配给变量.

在那之后,我迷路了.任何指导?

Akr*_*ron 12

这是一个三元声明.为了便于阅读,我把它翻译成了一个if/else块.

int salesTeamId;

if(person == null)
{
   salesTeamId = -1;
}
else
{
   salesTeamId = person.SalesTeam.Id;
}
Run Code Online (Sandbox Code Playgroud)


Ed *_* S. 8

那是三元运营商.这是一个简写if声明,相当于:

int salesTeamId;
if( person == null )
{
    salesTeamId = -1;
}
else
{
    salesTeamId = person.SalesTeam.Id;
}
Run Code Online (Sandbox Code Playgroud)