字面量的类型推断
控制字面量推断为 Int 还是 Double。
字面量的类型推断 是 CoddyKit 上的免费 Swift Academy 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Swift Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Swift Academy 课程共包含 4 节课。
字面量的默认类型
每种字面量都有默认的推断类型:整数会变为 Int,浮点数会变为 Double,文本会变为 String,true/false 会变为 Bool。
let i = 5
let d = 5.0
let s = "5"
let b = true
print(type(of: i), type(of: d), type(of: s), type(of: b))let x = 5 是 Int
不带小数点的整数型字面量始终会推断为 Int,这是平台默认的整数类型。
let x = 5
print(type(of: x))
print(x + 1)let y: Double = 5
使用 Double 添加类型注解后,同一个字面量 5 就会成为浮点值。
let y: Double = 5
print(type(of: y))
print(y / 2)小数点会强制使用 Double
写出 5.0 就会推断为 Double,无需添加类型注解。
let z = 5.0
print(type(of: z))
print(z * 2)Int 与 Double 不能混用
Swift 不会在数值类型之间进行隐式转换。要组合 Int 和 Double,必须显式转换。
let count = 3
let price = 1.5
let total = Double(count) * price
print(total)Float 与 Double
小数默认使用 Double。如果明确需要较小的 32 位类型,请使用 Float 添加类型注解。
let big = 3.14
let small: Float = 3.14
print(type(of: big), type(of: small))整数类型注解
请添加类型注解,以选择 Int8 或 UInt 等指定大小的整数类型,而不是默认的 Int。
let tiny: Int8 = 120
let unsigned: UInt = 9
print(type(of: tiny), type(of: unsigned))String 与 Character
双引号字面量会推断为 String。在单字符上下文中,通过类型注解可以将其推断为 Character。
let word = "Swift"
let letter: Character = "S"
print(type(of: word), type(of: letter))布尔字面量
关键字 true 和 false 会推断为 Bool。
let isReady = false
print(type(of: isReady))表达式中的字面量
当一个表达式中混合使用不同字面量时,Swift 会选择一个共同类型。1 + 2.0 会将整数型字面量视为 Double。
let mixed = 1 + 2.0
print(mixed)
print(type(of: mixed))类型注解会调整字面量
字面量本身具有灵活性;类型注解决定它最终的类型。这就是 let y: Double = 5 无需写成 5.0 也能正常工作的原因。
let a: Double = 7
let b: Float = 7
print(a, b)快速检查
测试字面量推断。
回顾
整数型字面量默认是 Int,小数型字面量默认是 Double。: Double、: Float、: Int8 或 : Character 等类型注解可以调整灵活的字面量,从而覆盖默认类型。数值类型永远不会隐式转换。
let i = 5
let d: Double = 5
print(type(of: i), type(of: d))用 AI 导师学习 Swift — 免费
在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。
- 课程
- 122
- 课程
- 409
常见问题解答
「字面量的类型推断」课时是免费的吗?
是的 — 「字面量的类型推断」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Swift Academy 课程的其余内容,请升级到 CoddyKit PRO。 Swift Academy 课程共包含 4 节课。
「字面量的类型推断」这节课中我会学到什么?
控制字面量推断为 Int 还是 Double。 你通过在浏览器中直接运行的动手代码来练习 Swift Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Swift Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Swift Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。
「字面量的类型推断」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Swift Academy 课中编写并运行代码吗?
能。每节 Swift Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。