这是一个奇怪的问题,但在另一个人的答案中,他们在另一个问题中发布了以下内容
try
{
PingReply reply = pinger.Send(nameOrAddress);
pingable = reply.Status == IPStatus.Success;
}
pingable = reply.Status == IPStatus.Success;
如何运作?对我而言,如果没有if。
答案 0 :(得分:10)
reply.Status == IPStatus.Success
将返回boolean
,该pingable
将分配给if
变量。
true
语句中会发生同样的事情:首先计算表达式,结果为false
或{{1}},只有结果将被检查为分支条件。< / p>
答案 1 :(得分:3)
与
相同if(reply.Status == IPStatus.Success)
pingable = true;
else
pingable = false;
代码
reply.Status == IPStatus.Success
返回插入pingable的布尔值。
答案 2 :(得分:2)
(reply.Status == IPStatus.Success)评估为布尔值true或false
答案 3 :(得分:1)
运算符==
始终解析为布尔值
所以
pingable = reply.Status == IPStatus.Success;
如果true
和pingable
相等,将reply.Status
放入IPStatus.Success
,如果不是false
则将pingable
放入{{1}}。 / p>
答案 4 :(得分:1)
这是一个条件。 pingable
是布尔值。
答案 5 :(得分:0)
pingable
(如布尔值)设置为reply.Status
等于IPStatus.Sucess