Swift 基本语法学习笔记
变量和常量
变量使用 var 关键字声明,常量使用 let 关键字声明。
swiftCopy Codevar myVariable = 42
myVariable = 50
let myConstant = 42
类型注解
你可以在变量或常量后面加上冒号和类型名称,以标注该变量或常量的类型。
swiftCopy Codevar myVariable: Double = 42
myVariable = 50
let myConstant: Float = 42
数组和字典
数组使用方括号包含值,字典使用中括号包含键值对。
swiftCopy Codevar someInts = [Int]()
someInts.append(3)
someInts = []
var someDict = [String: Int]()
someDict["one"] = 1
someDict = [:]
控制流
Swift 提供了传统的控制流结构,例如 for 循环和 switch 语句,以及增强版的控制流结构,例如 for-in 循环和 switch 语句的匹配模式。
swiftCopy Codelet individualScores = [75, 43, 103, 87, 12]
var teamScore = 0
for score in individualScores {
if score > 50 {
teamScore += 3
} else {
teamScore += 1
}
}
print(teamScore)
let interestingNumbers = [
"Prime": [2, 3, 5, 7, 11, 13],
"Fibonacci": [1, 1, 2, 3, 5, 8],
"Square": [1, 4, 9, 16, 25],
]
var largest = 0
for (kind, numbers) in interestingNumbers {
for number in numbers {
if number > largest {
largest = number
}
}
}
print(largest)
可选类型
在 Swift 中,当一个变量或常量可能为空时,你可以将它声明为可选类型。如果值存在,则可选类型包含该值;如果值不存在,则可选类型为空。
swiftCopy Codevar optionalString: String? = "Hello"
print(optionalString == nil)
var optionalName: String? = "John Appleseed"
var greeting = "Hello!"
if let name = optionalName {
greeting = "Hello, \(name)"
} else {
greeting = "Hello, anonymous"
}
print(greeting)
函数和闭包
Swift 支持函数闭包,可以在其中定义一个代码块并进行传递。
swiftCopy Codefunc greet(person: String, day: String) -> String {
return "Hello \(person), today is \(day)."
}
print(greet(person: "Bob", day: "Tuesday"))
let numbers = [1, 2, 3, 4, 5]
let mappedNumbers = numbers.map({ number in 3 * number })
print(mappedNumbers)
结构体和类
Swift 支持结构体和类,这两种类型可以定义方法和属性。
swiftCopy Codeclass Shape {
var numberOfSides = 0
func simpleDescription() -> String {
return "A shape with \(numberOfSides) sides."
}
}
var shape = Shape()
shape.numberOfSides = 7
var shapeDescription = shape.simpleDescription()
枚举和 switch 语句
Swift 支持枚举类型,并提供 switch 语句来匹配枚举值。
swiftCopy Codeenum Rank: Int {
case ace = 1
case two, three, four, five, six, seven, eight, nine, ten
case jack, queen, king
func simpleDescription() -> String {
switch self {
case .ace:
return "ace"
case .jack:
return "jack"
case .queen:
return "queen"
case .king:
return "king"
default:
return String(self.rawValue)
}
}
}
let ace = Rank.ace
let aceRawValue = ace.rawValue
print(ace.simpleDescription())
以上就是本文介绍的 Swift 基本语法,希望对你的学习有所帮助。