1.5 条件语句

发布于:2025-04-21 ⋅ 阅读:(82) ⋅ 点赞:(0)

Swift的条件语句有很多,本文就讲一个简单的if...语句。如果你看过上一篇文章,将会知道三元条件运算是if...语句的一个简化表示。

1.5.1 if…

这是一个基本的例子。
创建一个名叫runThisCode的布尔变量,决定if...语句后{...}中的代码是否执行。

var runThisCode = true

if runThisCode {
    print("执行这里的代码!")
}

如果运行这个代码,则可以在控制台看到执行这里的代码这行字。
runThisCode的值改为false,控制台就什么也不写。

if...语句的基本用法就是,给一个布尔值,如果布尔值是true,就执行后方的代码。

练习11
现在给出一个整数,x,值不确定。
判断x是否为奇数。如果是,在控制台输出“x是奇数”。
在此基础上修改:

var x = 3 // 可以是任意整数

// 在此处添加代码

难度:##

1.5.2 嵌套

基本上所有的代码都可以被认为是在一个if true {...}之中。
可以这么说,{...}是一个代码块,块可以包含一般的代码以及更多的块。

if true {
    print("Hello World")

    var running = true
    if running {
        print("Hi World")
    }
}

在块内被声明变量是属于这个块的,不能在块之外起作用。但是可以在下方被嵌套的块中起作用。

if true {
    var outerVar = "外层变量"
    if true {
        var innerVar = "内层变量"
        print(outerVar)  // 可以访问外层变量
        print(innerVar)  // 可以访问内层变量
    }
    // print(innerVar)  // 错误:内层变量在外部不可见
}

练习12
isWeekendtrue,则判断isSunny
如果isSunny也为true,则输出“周末天气很好,适合出去玩!”,否则输出“周末天气不太好,适合宅在家里。”
在此基础上修改:

var isWeekend = true // 或false
var isSunny = true // 或false

var s1 = "周末天气很好,适合出去玩!"
var s2 = "周末天气不太好,适合宅在家里。"

// 在此处添加代码

难度:#

1.5.3 if…else…

意思是,如果if...不被执行,那么就去执行else...的代码。

var score = 6

if score >= 60 {
    print("及格")
} else {
    print("不及格")
}
// 不及格

练习13
给一个整数x,如果是奇数则将它加上1,否则将它除以2,然后将它输出到控制台。
在此基础上修改:

var x = 3 // 可以是任意整数

// 在此处添加代码

print("x = \(x)")

难度:##

1.5.4 if…else if…(else if…)…else…

让之前的划分更详细一些。

var score = 75

if score >= 90 {
    print("优秀")
} else {
    if score >= 80 {
        print("良好")
    } else {
        if score >= 60 {
            print("及格")
        } else {
            print("不及格")
        }
    }
}
// 及格

Swift提供了一种简化的表示方法,不用写那么多嵌套。

var score = 75

if score >= 90 {
    print("优秀")
} else if score >= 80 {
    print("良好")
} else if score >= 60 {
    print("及格")
} else {
    print("不及格")
}
// 及格

练习14
整数x的值为1,2,3,4,5,6,7中的一个,让x的值决定输出信息“今天是星期...”
例如,如果x = 5,则在控制台输出“今天是星期五”
在此基础上修改:

var x = 1 // 可以是1...7中的某一个数

// 在此处添加代码

难度:##


参考答案:
练习11

var x = 3 //可以是任意整数

if (x % 2 == 1) {
    print("x是奇数")
}

练习12

var isWeekend = true // 或false
var isSunny = true // 或false

var s1 = "周末天气很好,适合出去玩!"
var s2 = "周末天气不太好,适合宅在家里。"

if isWeekend {
    if isSunny {
        print(s1)
    } else {
        print(s2)
    }
}

练习13

var x = 3 // 可以是任意整数

if (x % 2 == 1) {
    x = x + 1
} else {
    x = x / 2
}

print("x = \(x)")

练习14

var x = 1 // 可以是1...7中的某一个数

if (x == 1) {
    print("今天是星期一")
} else if (x == 2) {
    print("今天是星期二")
} else if (x == 3) {
    print("今天是星期三")
} else if (x == 4) {
    print("今天是星期四")
} else if (x == 5) {
    print("今天是星期五")
} else if (x == 6) {
    print("今天是星期六")
} else if (x == 7) {
    print("今天是星期日")
}

网站公告

今日签到

点亮在社区的每一天
去签到