Jeffrey · Chiang

Swift 基础

使用常见类型的数据并编写基本语法

swift是一种类型安全的放言,提供了Int、Double、Bool、String等基本类型;Array、Set、Dictionary集合类型。

swift还提供了元组,可以创建和传递值分组,以及将比哦中的多个值作为单个复合值返回。

swift还提供了可选类型,用于处理缺失值。

变量/常量

声明

常/变量须在使用前声明,let声明常量,var声明变量:

let maximumNumberOfLoginAttempts = 10
var currentLoginAttempt = 0

可以在声明的时候一起指定初始值,或稍后再分配:

var environment = "development"
// 常量允许在声明时不指定初始值,但要保证在首次使用前根本明确值
let maximumNumberOfLoginAttempts: Int
if environment == "development" {
    maximumNumberOfLoginAttempts = 100
} else {
    maximumNumberOfLoginAttempts = 10
}
// 现在,maximumNumberOfLoginAttempts有值,可以被读取,且首次分配后不能再被修改

可以在一行声明多个常/变量,以逗号分隔

类型注释

声明常/变量时通过在名称后面跟冒号(: )和类型,可以为常/变量添加类型注释。

可以在一行声明多个同类型的常/变量:

var red, green, blue: Double

命名

常/变量名称除不能包含空白字符、数学符号、箭头、专用Unicode标量值或线条和方框绘制字符外,几乎包含任何字符,包括Unicode字符:

let π = 3.14159
let 你好 = "你好世界"
let 🐶🐮 = "dogcow"
// 使用反引号(`)可以将Swift关键字作为常/变量名
var `let` = "keyword varialbe name"

打印

调用print(_:separator:terminator:)全局函数打印常/变量值,该函数默认会输出换行符,可以通过指定一个空字符串作为terminator,取消换行符的输出:

print(a,b,c,d,e,separator:"-",terminator:"")
// print "1-2-3-Hello-world"

// 较长的字符串使用插值将常/变量值包含在字符串中
print("The current value of friendlyWelcome is \(friendlyWelcome)")
// Prints "The current value of friendlyWelcome is Bonjour!"

注释

// 单行注释
/* 多行注释
多行注释 */

/*
	多行注释
	/* 嵌套多行注释 */	
	多行注释
*/

分号

行尾的分号是可选的,除非在一行内写多个语句!

整数

Swift提供8、16、32和64位有符号和无符号整数。

界限

指定整数类型的上下界限可以通过属性maxmin 获得,例如:UInt8.minUInt8.max

Int

额外提供的与当前平台本机字大小一致的整数类型:

  • 32位平台上,与Int32相同
  • 64位平台上,与Int64相同

如果不需要使用特定大小的整数,建议使始终使用Int

UInt

Swift提供的一个与当前平台本机字大小相同的无符号整数:

  • 32位平台上,与Int32相同
  • 64位平台上,与Int64相同