数字、布尔值与字符
使用 Int、Double、Float、Bool 和 Character 类型
第 3 / 4 课12 个步骤
数字、布尔值与字符 是 CoddyKit 上的免费 Swift Academy 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Swift Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Swift Academy 课程共包含 4 节课。
欢迎
Swift 提供了丰富的内置数字类型、布尔类型,以及用于表示单个 Unicode 标量的 Character 类型。下面让我们逐一了解。
整数类型
Swift 在不同位宽下提供有符号整数和无符号整数:
```swift
let a: Int = -42 // platform width (64-bit)
let b: Int8 = 127
let c: UInt = 255
let d: UInt8 = 200
```
一般用途的整数请使用 `Int`;当内存布局很重要时,再使用指定宽度的类型。
Int.min 和 Int.max
每种整数类型都会公开自己的边界值:
```swift
print(Int.min) // -9223372036854775808 on 64-bit
print(Int.max) // 9223372036854775807
print(UInt8.max) // 255
```
超出这些边界会导致运行时错误(如果确实需要溢出,请使用溢出运算符 &+、&-)。
浮点数:Double 和 Float
```swift
let pi: Double = 3.14159265358979 // 64-bit, ~15 decimal digits
let e: Float = 2.71828 // 32-bit, ~6 decimal digits
```
大多数情况下请优先使用 `Double`。只有在内存大小至关重要时才使用 `Float`,例如存储大量数值的数组。
算术运算符
Swift 支持标准的算术运算符:
```swift
let sum = 10 + 3 // 13
let diff = 10 - 3 // 7
let prod = 10 * 3 // 30
let quot = 10 / 3 // 3 (integer division)
let rem = 10 % 3 // 1
```
请记住:两个 `Int` 相除时,结果会向零截断。
布尔类型:true 和 false
```swift
var isLoggedIn: Bool = false
isLoggedIn = true
if isLoggedIn {
print("Welcome back!")
}
```
Swift 的布尔值是严格的——不能像在 C 中那样将整数用作真值或假值。
布尔运算符
三个核心布尔运算符:
```swift
let a = true && false // AND → false
let b = true || false // OR → true
let c = !true // NOT → false
```
短路求值:对于 `&&`,只有左侧为 `true` 时才会计算右侧。
字符类型
一个 `Character` 保存一个扩展字素簇(人类可读的字符):
```swift
let letter: Character = "A"
let emoji: Character = "🚀"
let accented: Character = "é"
```
字符字面量使用双引号,就像 String 一样。
字符与字符串
一个 `String` 是一系列 `Character` 值:
```swift
let str = "Hello"
for ch in str {
print(ch) // H, e, l, l, o
}
```
您可以使用 `String(character)` 从 Character 构建 String,也可以通过追加内容到 var String 来构建。
数值溢出运算符
当您需要有意处理溢出时(例如进行硬件位操作),请使用溢出运算符:
```swift
var x: UInt8 = 255
x = x &+ 1 // wraps to 0 instead of crashing
```
`&+`、`&-` 和 `&*` 运算符在发生溢出时都不会触发陷阱。
快速检查
哪个 Swift 布尔运算符只会在**两个**操作数都是 `true` 时返回 `true`?
回顾
要点总结:
• 整数:一般用途使用 `Int`,需要时使用定宽类型(`Int8`、`UInt8`……)
• 浮点数:优先使用 `Double`(64 位);对内存占用敏感的数组使用 `Float`(32 位)
• `Bool` 是严格的——只能是 `true` 或 `false`,不会进行整数强制转换
• `Character` 保存一个 Unicode 字素簇
• 需要有意处理溢出时使用 `&+`、`&-` 和 `&*`
接下来:字符串与插值。
免费开始
用 AI 导师学习 Swift — 免费
在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。
- 课程
- 122
- 课程
- 409
常见问题解答
「数字、布尔值与字符」课时是免费的吗?
是的 — 「数字、布尔值与字符」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Swift Academy 课程的其余内容,请升级到 CoddyKit PRO。 Swift Academy 课程共包含 4 节课。
「数字、布尔值与字符」这节课中我会学到什么?
使用 Int、Double、Float、Bool 和 Character 类型 你通过在浏览器中直接运行的动手代码来练习 Swift Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Swift Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Swift Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。
「数字、布尔值与字符」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Swift Academy 课中编写并运行代码吗?
能。每节 Swift Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- let 与 var:常量和变量
- 类型推断与显式类型
- 数字、布尔值与字符
- 字符串基础与插值