2.1常量与变量
2.1.1常量
语法:let常量名=常量值
说明:定义不可改变
常见错误:cannot assign to let value‘count’
命名规则:字母下划线开头,后跟数字字母,不可使用关键字、区分大小写
举例:
import Foundation
let count = 100
print(count)
2.1.2变量
语法:var变量名=值
说明:可改变
命名规则:字母下划线开头,后跟数字字母,不可使用关键字、区分大小写
举例:
import Foundation
var a = 60
print(a)
多个常量或变量的声明在同一行需要用;隔开
2.1.3指定数据类型
语法:{let,var}名称:类型=值
举例:
import Foundation
var a:Int=100
print(a)
2.2简单的数据类型
类型大小(字节)区间值
Int8 1字节-127到127
UInt8 1字节0到255
Int32 4字节-2147483648到2147483647
UInt32 4字节0到4294967295
Int64 8字节-9223372036854775808到9223372036854775807
UInt64 8字节0到18446744073709551615
Float 4字节1.2E-38到3.4E+38(~6 digits)
Double 8字节2.3E-308到1.7E+308(~15 digits)
获取数据类型边界
import Foundation
let minValueUInt8=UInt8.min
let maxValueUInt8=UInt8.max
2.2.1整型(Integer)
int8、UInt8、Int32、UInt32、Int64、UInt64
2.2.2浮点
Float、Double(当浮点值非常大或特别准确时候使用)
Float的精准度低于6位十进制数字
Double至少有15位十进制数字的精准度
2.2.3字符/字符串
字符类型:Character
注意:字符型只能放一个字母
举例:
import Foundation
var c:Character=“L”
print(c)
字符串:String
举例:
import Foundation
var s:String=“Hello World”
print(s)
2.2.4布尔
说明:布尔只有两个值true和false
注意:区别php、python的自动转换
举例:
import Foundation
var bool:Bool=true
print(bool)
2.2.5可选类型
说明:可选类型用来判断值是否存在,如果值存在就会输出,如果不存在就会返回一个nil
nil是一个特定的类型的空值,任何类型的可选变量都可以被设置为nil
nil是swift专用类型
语法:{let,var}名称:数据类型?
举例:
import Foundation
let a:Int?
print(a)
2.3字面值
2.3.1整数的字面值
十进制数,没有前缀
二进制数,前缀0b
八进制数,前缀0
十六进制数,前缀0x
举例:
import Foudation
var decimalInteger=17
var binarayInteger=0b10001
var octalInteger=017
var hexadecimalInteger=0x11
2.3.2浮点类型的字面值
2.3.2.1用十进制或十六进制表示:12.18
2.3.2.2科学计数法
语法:
十进制:n.ne+/-p
十六进制:n.np+/-p
举例:
1.25e2->125
0xFp2->60
0xFp-2->3.75
2.3.3字符型字面值
字符型字面值通常使用双引号表示,“A”
2.3.4字符串字面值
2.3.4.1双引号包含的字符串
2.3.4.2转义序列
\0 空
\\ 反斜杠
\t 制表符
\n 换行
\r 回车
\” 双引号
\’ 单引号
2.3.4.3Unicode标量
单字节Unicode标量,写成\unn,其中nn表示两位十六进制数
两字节Unicode标量,写成\unnnn,其中nnnn表示四位十六进制数
四字节Unicode标量,写成\unnnnnnnn,其中nnnnnnnn是八位十六进制数
举例:
import Foundation
let dollarSign="\u{24}"
let blackHeart="\u{2665}"
let sparklingHeart="\u{0001F496}"
print(dollarSign)
print(blackHeart)
print(sparklingHeart)
2.3.5布尔类型的字面值
布尔类型的字面值只有true、false
2.4高级数据类型-元组
高级数据类型包含:类、结构、函数、元组等
swift将它自己的数据类型分为两类:命名类型、复合类型
命名类型:类、结构、枚举、协议、简单数据类型
复合类型:没有名字,由swift语言本身定义的类型
语法:(value1,value2,value3,......)
说明:值可以是任意的数据类型
元组类型的变量\常量
语法:{var,let}(name1,name2,name3,….)=(value1,value2,value3,….)
说明:常量\变量的个数必须要和元组字面量中的个数一致
举例:
import Foundation
var(code,msg)=(403,"not found")
print(code)
print(msg)
访问元组的值
语法:\(name)或使用索引访问
举例:
import Foundation
var(code,msg)=(403,"not found")
var string:String="code:\(code),message:\(msg)";
print(string)
#忽略元组中的值:
import Foundation
var a=(1,2,3)
var(b,_,c)=a
print(b)
print(c)
#使用索引访问
import Foundation
var a=(1,2,3)
print(a.0)
print(a.1)
print(a.2)
#命名元组中的个元素
import Foundation
var a=(b:1,c:2,d:3)
var s:String="b is \(a.b)"
print(a)
print(a.0)
print(a.b)
print(s)
2.5类型别名
为现有的类型定义代替的名称
语法:typealias类型别名=数据类型名称
举例:
import Foundation
typealias AudioSample = Int
var maxAudioSample=AudioSample.max
print(maxAudioSample)
网友评论