小编Avi*_* B.的帖子

在C#中是否存在if语句?

我在C#中遇到了以下代码.

if(condition0) statement0;
else if(condition1) statement1;
else if(condition2) statement2;
else if(condition3) statement3;
...
else if(conditionN) statementN;
else lastStatement;
Run Code Online (Sandbox Code Playgroud)

我的一些同事告诉我,这是一个else if声明.但是,我确信它实际上是一个多层嵌套if-else语句.我知道没有分隔符{},一个if或多个语句中允许一个语句else.所以在这种情况下,我认为它将等同于以下代码.

if(condition0) 
  statement0;
else
  if(condition1)
    statement1;
  else
    if(condition2)
      statement2;
    else
      if(condition3)
        statement3;
      else
      ...
Run Code Online (Sandbox Code Playgroud)

请注意,我改变的只是空白.这种缩进是有效的,因为当没有分隔符时,每个缩进else都会返回到最近的if语句.

任何人都可以澄清else if第一个例子中的格式是否被编译器if-else与第二个例子中的嵌套格式区别对待?

.net c# if-statement

49
推荐指数
1
解决办法
5万
查看次数

标签 统计

.net ×1

c# ×1

if-statement ×1