📜  Swift if语句(1)

📅  最后修改于: 2023-12-03 15:05:26.003000             🧑  作者: Mango

Swift if语句介绍

if语句是Swift中最基本的控制流结构之一,也是所有编程语言中最常用的结构之一。if语句基于条件来决定是否执行一段代码。

基本语法

if语句的基本语法如下:

if condition {
   // 语句
}
  • condition 是一个表达式,它必须是一个布尔类型,即 truefalse
  • 如果 condition 的值为 true,那么将执行花括号中的代码
  • 如果 condition 的值为 false,那么将直接跳过花括号中的代码。
if-else 语句
if condition {
   // 语句
} else {
   // 语句
}
  • 如果 condition 的值为 true,那么将执行第一个花括号中的代码
  • 如果 condition 的值为 false,那么将执行第二个花括号中的代码。
else-if 语句
if condition1 {
   // 语句
} else if condition2 {
   // 语句
} else if condition3 {
   // 语句
} else {
   // 语句
}
  • 如果 condition1 的值为 true,那么将执行第一个花括号中的代码
  • 如果 condition1 的值为 false,那么将继续判断 condition2,如果为 true,那么执行第二个花括号中的代码
  • 如果 condition2 的值也为 false,那么将继续判断 condition3,以此类推
  • 如果所有 condition 的值都为 false,那么将执行最后一个 else 中的代码。
if 语句和可选类型

if 语句和可选类型一起使用时,可以通过 if letif var 来判断可选类型是否有值。

var optionalInt: Int? = 3

if let nonOptionalInt = optionalInt {
    // nonOptionalInt 是一个非可选类型的整数
    print("optionalInt 有值,它的值是 \(nonOptionalInt)")
} else {
    print("optionalInt 为 nil")
}
  • 如果 optionalInt 有值(即不为 nil),那么 if let 结构将自动解包并将 optionalInt 的值赋给 nonOptionalInt,因此 nonOptionalInt 将是一个非可选类型的整数。
  • 如果 optionalIntnil,那么条件 if let 将不成立,代码将执行 else 中的语句。
空合并运算符

使用空合并运算符可以在一个可选类型的值为 nil 时,返回一个默认值。

let optionalValue: Int? = nil
let result = optionalValue ?? 0 //如果 optionalValue 为 nil,那么 result 的值为 0
三目运算符

Swift 中的三目运算符 condition ? true : false 可以用于简化 if-else 结构。

var a = 5
var b = 10
var c = a > b ? a : b //c 的值为 b,因为 a > b 的值为 false

这里的 conditiona > b,如果 condition 的值为 true,那么 c 的值将是 a,否则 c 的值将是 b。这段代码与以下 if-else 结构的作用相同:

var a = 5
var b = 10
var c: Int

if a > b {
    c = a
} else {
    c = b
}