type
status
date
slug
summary
tags
category
icon
password
example-row
example-row
常量和变量
常量 的值一旦设定就不能改变,而 变量 的值可以随意更改。
声明常量和变量
常量和变量必须在使用前声明,用
let
来声明常量,用 var
来声明变量。可以在一行中声明多个常量或者多个变量,用逗号隔开。类型注解
当你声明常量或者变量的时候可以加上 类型注解(type annotation) ,说明常量或者变量中要存储的值的类型。
声明中的冒号代表着 “是...类型” ,所以这行代码可以被理解为:“声明一个类型为
String
,名字为 welcomeMessage
的变量。”可以在一行中定义多个同样类型的变量,用逗号分割,并在最后一个变量名之后添加类型注解:
如果在声明常量或者变量的时候赋了一个初始值,可以不写类型注解,Swift 可以推断出这个常量或者变量的类型。
常量和变量的命名
- 常量与变量名不能包含数学符号,箭头,保留的(或者非法的)Unicode 码位,连线与制表符。也不能以数字开头,但是可以在常量与变量名的其他地方包含数字。
- 一旦你将常量或者变量声明为确定的类型,你就不能使用相同的名字再次进行声明,或者改变其存储的值的类型。同时,你也不能将常量与变量进行互转。
- 如果你需要使用与 Swift 保留关键字相同的名称作为常量或者变量名,你可以使用反引号(`)将关键字包围的方式将其作为名字使用。无论如何,你应当避免使用关键字作为常量或变量名,除非你别无选择。
- 与变量不同,常量的值一旦被确定就不能更改了。
代码注释
- 单行注释:
//
- 多行注释:
/* same code */
分号
Swift 并不强制要求你在每条语句的结尾处使用分号(
;
),但当在同一行内写多条独立的语句时,必须要用分号隔开。类型安全
Swift 是一个 类型安全(type safe) 的语言。它会在编译你的代码时进行 类型检查(type checks),并把不匹配的类型标记为错误。
数值型字面量
整数:
- 十进制数,没有前缀,示例:
17
- 二进制数,前缀是
0b
,示例:0b10001
(17)
- 八进制数,前缀是
0o
, 示例:0o21
(17)
- 十六进制数,前缀是
0x
,示例:0x11
(17)
浮点数:
- 十进制数,没有前缀,示例:
12.1875
- 十进制科学计数,没有前缀, 用大写或者小写的
e
指定指数,示例:1.21875e1
(12.1875)
- 十六进制数,前缀
0x
,必须使用科学计数,用大写或者小写的p
指定指数,示例:0xC.3p0
(12.1875)
数值类字面量可以包括额外的格式来增强可读性,比如添加额外的零和下划线。示例:
000123.456
, 1_000_000
。类型别名
使用
typealias
关键字来定义类型别名(type aliases),当你想要给现有类型起一个更有意义的名字时,类型别名非常有用。AudioSample
被定义为 UInt16
的一个别名,AudioSample.min
实际上是 UInt16.min
,所以会给maxAmplitudeFound
赋值为0
元组
元组(tuples) 把多个值组合成一个复合值。元组内的值可以是任意类型,并不要求是相同类型。
- 一个元组的内容可以分解(decompose)成单独的常量或变量,如果只需要一部分元组值,分解的时候可以把要忽略的部分用下划线(
_
)标记:
- 可以通过下标来访问元组中的单个元素,下标从零开始:
- 可以在定义元组的时候给单个元素命名,然后通过名字来获取这些元素的值:
- 作者:黄x黄
- 链接:https://hxhowl.site/article/swift001
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章