字符串基础与插值
创建字符串,使用 \(variable) 进行字符串插值,并执行基本操作
第 4 / 4 课12 个步骤
字符串基础与插值 是 CoddyKit 上的免费 Swift Academy 课时。 这是第 4 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Swift Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Swift Academy 课程共包含 4 节课。
欢迎
字符串几乎是每个应用的核心。Swift 的 `String` 类型符合 Unicode 规范,采用值语义,并且功能非常强大。下面来学习基础知识。
字符串字面量
字符串字面量使用双引号:
```swift
let greeting = "Hello, World!"
var city = "Istanbul"
```
多行字符串请使用三个双引号:
```swift
let poem = """
Roses are red,
Swift is great.
"""
```
字符串拼接
使用 `+` 运算符或 `+=` 拼接字符串:
```swift
let first = "Hello"
let second = " World"
let full = first + second // "Hello World"
var msg = "Hi"
msg += " there" // "Hi there"
```
字符串插值
使用 `\(expression)` 将任意表达式嵌入字符串:
```swift
let name = "Alice"
let score = 95
print("Player \(name) scored \(score) points")
// Player Alice scored 95 points
```
与手动拼接相比,插值更安全,也更易读。
isEmpty 和字符数
检查字符串是否为空,或获取其中的字符数:
```swift
var text = ""
print(text.isEmpty) // true
text = "Swift"
print(text.count) // 5
```
请使用 `.isEmpty`,而不是 `text == ""`——这更符合 Swift 的惯用写法。
常用字符串方法
```swift
let str = "Hello, Swift!"
str.uppercased() // "HELLO, SWIFT!"
str.lowercased() // "hello, swift!"
str.contains("Swift") // true
str.hasPrefix("Hello") // true
str.hasSuffix("!") // true
str.replacingOccurrences(of: "Swift", with: "World")
```
字符串可变性
Swift 中的字符串是*值类型*。`var` 字符串可变,而 `let` 字符串不可变:
```swift
var mutable = "Hello"
mutable.append(" World") // ✓
let immutable = "Hello"
immutable.append(" World") // ❌ compile error
```
字符串比较
使用 `==`、`<` 和 `>` 运算符比较字符串(遵循 Unicode 规则):
```swift
let a = "apple"
let b = "banana"
print(a == b) // false
print(a < b) // true (lexicographic order)
```
默认情况下,比较与区域设置无关。
原始字符串
使用 `#"..."#` 禁用转义序列——这对正则表达式模式或路径很有用:
```swift
let pattern = #"\d{3}-\d{4}"#
// The backslashes are literal, not escape sequences
let path = #"C:\Users\Alice"#
```
在原始字符串中,仍然可以使用 `\#(value)` 进行插值。
在字符串与其他类型之间转换
```swift
let num = 42
let str = String(num) // "42"
let back = Int(str) // Optional(42)
let invalid = Int("abc") // nil
```
从字符串转换为数值类型时会返回 Optional,因为该字符串可能无法表示有效数字。
快速检查
什么语法可以将变量的值嵌入 Swift 字符串字面量中?
回顾
要点总结:
• 字符串字面量使用 `"..."`,多行字符串使用 `"""`
• 使用 `\(expression)` 进行插值——这是构建字符串最简洁的方式
• `var` 字符串可变,`let` 字符串不可变
• 使用 `.isEmpty`、`.count`、`.contains()`、`.hasPrefix()` 和 `.hasSuffix()`
• 将字符串转换为数值类型会得到 Optional
下一课:使用范围的 for-in 循环。
免费开始
用 AI 导师学习 Swift — 免费
在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。
- 课程
- 122
- 课程
- 409
常见问题解答
「字符串基础与插值」课时是免费的吗?
是的 — 「字符串基础与插值」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Swift Academy 课程的其余内容,请升级到 CoddyKit PRO。 Swift Academy 课程共包含 4 节课。
「字符串基础与插值」这节课中我会学到什么?
创建字符串,使用 \(variable) 进行字符串插值,并执行基本操作 你通过在浏览器中直接运行的动手代码来练习 Swift Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Swift Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Swift Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 4 节课,共 4 节。
「字符串基础与插值」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Swift Academy 课中编写并运行代码吗?
能。每节 Swift Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。