Swift if、if...else 语句

在计算机编程中,我们使用 if 语句在满足特定条件时执行代码块。

例如,根据学生获得的分数分配等级(ABC)。

  1. 如果百分比高于 90,则分配成绩 A
  2. 如果百分比高于 75,则分配成绩 B
  3. 如果百分比高于 65,则分配成绩 C

在 Swift 中,if...else 语句有三种形式。

  1. if 语句
  2. if...else 语句
  3. if...else if...else 语句

1. Swift if 语句

Swift 中 if 语句的语法是:

if (condition) {
  // body of if statement
}

if 语句会计算圆括号 () 中的 condition(条件)。

  • 如果 condition 计算结果为 true,则执行 if 主体内的代码。
  • 如果 condition 计算结果为 false,则跳过 if 主体内的代码。

注意: { } 中的代码是 if 语句的主体。

Code inside the body of if is executed if the condition is true.
if 语句的工作原理

示例 1:if 语句

let number = 10

// check if number is greater than 0
if (number > 0) {
  print("Number is positive.")
}

print("The if statement is easy")

输出

Number is positive.
The if statement is easy

在上面的示例中,我们创建了一个名为 number 的变量。请注意测试条件:

number > 0

这里,由于 number 大于 0,条件计算结果为 true

如果我们把变量改为一个负整数,比如 -5

let number = -5

现在,当我们运行程序时,输出将是:

The if statement is easy

这是因为 number 的值为小于 0。因此,条件计算结果为 false。并且,if 块的主体被跳过。


2. Swift if...else 语句

if 语句可以有一个可选的 else 子句。

if-else 语句的语法是:

if (condition) {
  // block of code if condition is true
}
else {
  // block of code if condition is false
}

if...else 语句会计算圆括号中的 condition(条件)。

如果条件计算结果为 true,

  1. 则执行 if 内的代码,
  2. 并跳过 else 内的代码。

如果条件计算结果为 false,

  1. 则执行 else 内的代码,
  2. 并跳过 if 内的代码。
How if...else statement works
if...else 语句的工作原理

示例 2:Swift if...else 语句

let number = 10

if (number > 0) {
    print("Number is positive.")
}

else {
    print("Number is negative.")
}

print("This statement is always executed.")

输出

Number is positive.
This statement is always executed.

在上面的示例中,我们创建了一个名为 number 的变量。这里,测试表达式:

number > 0

由于 number 的值为 10,测试表达式计算结果为 true。因此,执行了 if 主体内的代码。

如果我们把变量改为一个负整数,比如 -5

let number = -5

现在如果我们运行程序,输出将是:

Number is negative.
This statement is always executed.

这里,测试表达式计算结果为 false。因此,执行了 else 主体内的代码。


3. Swift if...else if...else 语句

if...else 语句用于在两个备选项中执行一段代码。

然而,如果你需要在两个以上的选项之间进行选择,那么我们使用 if...else if...else 语句。

if...else if...else 语句的语法是:

if (condition1) {
    // code block 1
}

else if (condition2){
    // code block 2
}

else {
    // code block 3
}

这里,

  1. 如果 condition1 计算结果为 true,则执行 code block 1
  2. 如果 condition1 计算结果为 false,则计算 condition2
    1. 如果 condition2true,则执行 code block 2
    2. 如果 condition2false,则执行 code block 3
How if...else if...else statement works
if...else if 语句的工作原理

示例 3:Swift if..else if 语句

// check whether a number is positive, negative, or 0.

let number = 0

if (number > 0) {
    print("Number is positive.")
}

else if (number < 0) {
    print("Number is negative")
}

else {
    print("Number is 0.")
}

print("This statement is always executed")

输出

Number is 0.

在上面的示例中,我们创建了一个值为 0 的名为 number 的变量。这里,我们有两个条件表达式:

  1. if (number > 0) - 检查 number 是否大于 0
  2. else if (number < 0) - 检查 number 是否小于 0

这里,两个条件都计算为 false。因此,执行了 else 主体内的语句。


Swift 嵌套 if 语句

你也可以在一个 if 语句中嵌套另一个 if 语句。这被称为 **嵌套 if** 语句。

**嵌套 if** 语句的语法是:

// outer if statement
if (condition1) {
    // statements

    // inner if statement
    if (condition2) {
    // statements
    }
}

注意事项

  1. 我们可以根据需要向内部 if 语句添加 elseelse if 语句。
  2. 我们也可以在外部 elseelse if 语句(如果存在)中插入内部 if 语句。
  3. 我们可以嵌套多层 if 语句。

示例 4:嵌套 if...else 语句

var number = 5

// outer if statement
if (number >= 0) {

  // inner if statement
  if (number == 0) {
      print("Number is 0")
  }

  // inner else statement
  else {
      print("Number is positive");
  }
}

// outer else statement
else {
    print("Number is negative");
}

输出

Number is positive

在上面的示例中,我们使用 **嵌套 if** 语句来检查给定的数字是正数、负数还是 0。

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战