5.4 串接和嵌套
有时需要检查多个相关的条件,并在多种措施中选择一种方式。其中一种方法是将一系列的 if 和 else 语句串接(chaining)起来:
if (x > 0) {System.out.println("x is positive");} else if (x < 0) {System.out.println("x is negative");} else {System.out.println("x is zero");}
你可以想串接多长就串接多长,但太长可能难以阅读。为提高可读性,可使用标准的缩进方式,如这里的示例所示。将语句和大括号对齐可降低出现语法错误的可能性。
除了串接,还可以在一个条件语句中嵌套(nesting)另一个条件语句以作出复杂的决策。可将前面的示例重写为下面这样:
if (x == 0) {System.out.println("x is zero");} else {if (x > 0) {System.out.println("x is positive");} else {System.out.println("x is negative");}}
外面的条件语句有两个分支,第一个分支包含一条打印语句,第二个分支包含另一个条件语句,该条件语句也有两个分支。这两个分支都是打印语句,但它们本来也可以是条件语句。
这样的嵌套结构很常见,但很难快速地阅读它们。因此我们必须使用正确的缩进,以便这种结构易于理解。
