跳到主要内容

第2章:Swift语言基础

在本章中,我们将学习Swift语言的基础知识,这是开发iOS应用的核心技能之一。Swift是一种强大且直观的编程语言,专为iOS、macOS、watchOS和tvOS开发而设计。通过掌握Swift的基础语法、变量与常量、控制流与函数,你将能够编写出结构清晰、功能强大的代码。

2.1 Swift语法基础

Swift的语法设计简洁且易于理解,以下是一些基础语法要点:

  • 语句结束符:Swift中的语句通常以换行符结束,不需要显式使用分号(;)。但如果在一行中写多个语句,则需要用分号分隔。

    let greeting = "Hello, World!"
    print(greeting) // 输出: Hello, World!
  • 注释:Swift支持单行注释和多行注释。

    // 这是单行注释

    /*
    这是多行注释
    可以跨越多行
    */
  • 标识符:Swift中的标识符(变量名、函数名等)可以包含字母、数字、下划线,但不能以数字开头。Swift是区分大小写的。

    let myVariable = 42
    let my_variable = 42

2.2 变量与常量

在Swift中,变量和常量是存储数据的基本方式。变量使用var关键字声明,而常量使用let关键字声明。

  • 变量:变量的值可以在声明后更改。

    var score = 10
    score = 20 // 可以重新赋值
  • 常量:常量的值一旦设定就不能更改。

    let pi = 3.14159
    // pi = 3.14 // 这行代码会报错,因为pi是常量
  • 类型推断:Swift具有强大的类型推断能力,编译器可以根据赋值的值自动推断变量或常量的类型。当然,你也可以显式地指定类型。

    let name = "Alice"  // 类型推断为String
    let age: Int = 25 // 显式指定类型为Int

2.3 控制流

控制流语句用于控制程序的执行顺序。Swift提供了多种控制流语句,包括条件语句和循环语句。

2.3.1 条件语句

  • if语句:用于根据条件执行不同的代码块。

    let temperature = 30
    if temperature > 25 {
    print("It's hot outside!")
    } else {
    print("It's cool outside.")
    }
  • switch语句:用于匹配多个可能的值。

    let grade = "A"
    switch grade {
    case "A":
    print("Excellent!")
    case "B":
    print("Good!")
    default:
    print("Keep trying!")
    }

2.3.2 循环语句

  • for-in循环:用于遍历集合(如数组、字典等)中的元素。

    let numbers = [1, 2, 3, 4, 5]
    for number in numbers {
    print(number)
    }
  • while循环:在条件为真时重复执行代码块。

    var count = 0
    while count < 5 {
    print("Count is \(count)")
    count += 1
    }
  • repeat-while循环:类似于while循环,但至少会执行一次代码块。

    var i = 0
    repeat {
    print("i is \(i)")
    i += 1
    } while i < 3

2.4 函数

函数是Swift中的基本构建块之一,用于封装可重用的代码。函数可以接受参数并返回值。

2.4.1 定义函数

  • 无参数函数

    func sayHello() {
    print("Hello!")
    }
    sayHello() // 输出: Hello!
  • 带参数函数

    func greet(name: String) {
    print("Hello, \(name)!")
    }
    greet(name: "Alice") // 输出: Hello, Alice!
  • 带返回值函数

    func add(a: Int, b: Int) -> Int {
    return a + b
    }
    let sum = add(a: 3, b: 5)
    print(sum) // 输出: 8

2.4.2 函数参数标签

Swift允许你为函数的参数指定外部标签和内部名称。外部标签用于调用函数时,内部名称用于函数内部。

func greet(to name: String) {
print("Hello, \(name)!")
}
greet(to: "Bob") // 输出: Hello, Bob!

2.4.3 默认参数值

你可以为函数的参数指定默认值,这样在调用函数时可以省略这些参数。

func greet(name: String = "Guest") {
print("Hello, \(name)!")
}
greet() // 输出: Hello, Guest!
greet(name: "Charlie") // 输出: Hello, Charlie!

2.5 小结

在本章中,我们学习了Swift语言的基础知识,包括语法基础、变量与常量、控制流与函数。这些知识是开发iOS应用的基础,后续章节中我们将结合这些知识,使用Cursor工具开发一个简单的iOS应用。

在下一章中,我们将介绍iOS开发的基础知识,包括Xcode的使用、iOS应用的结构以及如何创建一个简单的用户界面。