Int、Float、Double、Bool、Character、String
Array、Dictionary、元组类型(Tuple)、可选类型(Optional)
Swift中用let关键字来声明常量
在常量名后面加上 冒号(:) 和 类型名称
let age : Int = 18 ; //定义了一个Int类型的常量age,初始值是18
Swift中用var关键字来声明变量
var str : String = "http://blog.csdn.net/iosHot" ; //定义了一个String类型的变量,初始值是"http://blog.csdn.net/iosHot"
一般来说,没有必要明确指定变量\常量的类型。
如果在声明常量\变量时赋了初始值,Swift可以自动推断出这个常量\变量的类型。
let age = 18 ; //Swift会推断出age是Int类型,因为18是个整数
不能包含数学符号(比如 + 、-、 *、\ )
不能包含箭头(比如↑、↓、←、→)
不能包含非法无效的Unicode字符不能是关键字(比如let、var)
不能以数字开头(比如 123go)
不能是单独一个下划线 _ (比如var _ = 10)
Swift严格要求变量在使用之前必须进行初始化
下面的代码是错误的
var a: Int ; //Swift并不会为变量a赋初值,a没有初始化 let c = a + 10 ; //由于a没有初始化,所以这行代码会报错下面的代码是正确的
var a: Int = 20 ; let c = a + 10 ;
下面的语句是错误的
let num1: UInt8 = 10; let num2: Int = 20; let sum: Int = num1 + num2;//这行会报错报错原因:num1是UInt8类型,num2是类型Int,类型不同,不能相加。
let sum: Int = Int(num1) + num2;
let num1 = 3;// num1是Int类型 let num2 = 0.14;// num2是Double类型 let sum = num1 + num2;//这行会报错报错原因:num1是Int类型,num2是类型Double,类型不同,不能相加。
let sum = Double(num1) + num2
let sum = 3 + 0.14;3和0.14相加得到结果3.14,等赋值以后,编译器才会自动推断出sum是Double类型。