Swift - 基础
常量和变量
var a //变量 let a //常量 //常量和变量的命名 //可以用中文和表情 let 中文 = "Chinese" let 😀 = "Smile"
数据类型
//类型推断 var s = "" //类型制定 var s:String = "" //可选类型(可以为空) //可选类型 Optional Int 相当于 Int? var s:String? = "" //可选类型的解析 //如果确定某个可选类型是有值的, 可以用!来获取值(value)的部分 var s:String? = "s" if s != nil { println(s!) } //可选绑定 if var str = s { println(str) } //隐式解析可选类型 //第一次被赋值之后, 可以确定一个可选类型总会有值 //不要在变量没有值的时候使用 var possibleStr: String! = "string" possibleStr; //类型别名 typealias myType = Int myType i = 10
元组
// 元祖代表多个值和多个变量存在于一个组合中 // 相当于 C 中的 struct var people = ("name", 18) var (name, age) = people // 或者 var people = (name:"name", age:18) //下标取值 people.0 //成员取值 people.name //匿名成员 //匿名成员的值只能通过下标才能取到 var (name, _) = people
断言
var age = 10 assert(age >= 0, "age must be bigger than 10")
字符串链接
str1 + str2 //运算符号链接 str + "\(100), 's', \(200)"
数组
var arr = [] //空数组 var arr = ["str", 1, 1.1] //初始化数组 var arr = String[]() //制定类型数组
字典
var dict = [ "name" : "value", "age" : "value2" ] //初始化 dict["age"] = value3 //更新字典 dict["name"] //获取字典值
循环
for index in 0..100{} //指定范围 for arr in arr {} //数组遍历 for (key, value) in dict{} //字典遍历 while i < arr.count{}
流程
if bool{} if let a = myVar{} //?
函数
fun get(p:String) -> (Int, Int) //参数和返回值(多返回值) { return (2, 3) // 多返回值 } let (a, b) = get(""); //获取多返回值函数
面向对象
class myClass{ Init(){ //构造函数 self //this指针 } fun myFun(){} //成员函数 } class myClass2 : myClass //继承 { override fun myFun(){} //重写 } var my = myclass() //实例化