1.常量和变量:
//常量
let x = 200
//x = 250 常量不可修改
//变量
var y = 10000
y = 100 //变量可修改
*****swift会自动分辨我们声明的是什么类型,这是swift的Type inference机制
如果想在声明变量时显示类型,可以这样写:
var abc : String ="hello"
2.基本数据类型
2.1整型
var i:Int =10
var l:UInt =10
Int.max
Int.min
UInt.max
UInt.min
//用二进制给整型赋值
let desInt : Int =17 //十进制
let binInt : Int =0b10001 //二进制
//swift中可以用_分割数值,方便看出大小
let num =100_0000 //_不具有任何意义,
2.2浮点型
let a1:Double =1.0 //64位
let a2:Float =0.1 //32位
//类型转换:swift没有自动数据类型转换,必须开发者显式的类型转换,可以避免一些隐藏的BUG
a1 + Double(a2)
Float(a1) +a2
let m:Float =3 //这样写是没有错误的,这里swift并没有帮我们强制转换,3也可以看做是3.0
//iOS开发中还有一种CGFloat类型,最常见的使用就是设置颜色的时候:
UIColor(red: <#T##CGFloat#>, green: <#T##CGFloat#>, blue: <#T##CGFloat#>, alpha: <#T##CGFloat#>))
2.3 BOOL类型
let ifTrue:Bool =true
let ifFalse:Bool =false
说道布尔类型就不得不说if条件语句
if ifTrue{
print("it is true")
} //即使只有一行,{}也不能省略
else if 3 + 4 == 7{
print("3 + 4 == 7")
}else{
print("it is false")
}
在xcode中用swift写这三行代码时会有警告,说这些代码永远不会被执行,说明这是冗余代码,这也表现出了swift的智能
2.4元组
/*
元组: 将多个不同的值集合成一个数据
特点: 1.可以有任意多个值 2.不同的值可以是不同类型
典型例子:可以返回多个数据
应用场合: 轻量级数据的集合
同类型:枚举
*/
var point = (1,3, 5)
var httpResponse = (404,"Not Found")
var point2: (Int,Int, Int) = (9,10, 5)
var httpResponse2: (Int,String) = (200,"OK")
元组的使用:
let (g, h, k) = point
var (statusCode, statusMessage) = httpResponse
statusCode
//400
statusMessage
//"Not Found"
let point4: (x:Int, y:Int) = (10,4)
point4.x //直接调用元组的值
let loginResult = (true,"zhangsan")
let (isLoginSuccess, _) = loginResult //用_来忽略一些值
if isLoginSuccess{
print("Login success!")
}else{
print("Login failed!")
}
元组典型应用:对于一个函数可以直接返回多个数据
注意:与枚举,结构体,类的平衡使用
2.5 String 只能使用" "将字符串括起来
在swift中变量名可以用汉字,表情
var 名字 ="chengshuang"
print("我的名字是",名字)
var