Welcom to Swift
1、第一个程序 import Foundation println(“hello world”) 2、常用数据类型 int/UInt/Double/Float/Bool/String/Array/Dictionary/元组(tuple)/可选类型(Optional) 3、变量常量必须设初始值 变量 var myName = “zhangsan” 常量 let myPhone = “18336070719” 4、整型变现形式 二进制: 前缀为0b 八进制:前缀为0o 十六进制:前缀为0x 5、类型别名 使用typealias定义,类似与typedef typealias NSInteger = Int var value:NSInteger = 12 6、swift不支持隐式类型转换。需要显示类型转换 String(23):把23转换成字符串 字符格式化\(items) let apples = 3 let applesSummary = “I hava \(apples) apples” 7、数组 let emtptArray Array = [ ] 插入: 往数组里面加元素(末尾) emtptArray.append(“pingguo”); 插入emptpt.insert(“pingguo”,atIndex:3); emtptArrayi +=“pingguo “ emtptArray.capacity //数组的容量2的次方,值大于等于emtptArray.count, 修改: array[1] = “天空” array[4…7] = [“bananas”,”apple”] //把下标为4,5,6,7的元素替换 删除: array.removeLast() //删除最后一个元素 array.removeAtIndex(4) array.removeAll() //删除所有 新建数组 var array = Array(count:3,repeateValue:2.5); 遍历: 1、for item in array{ println(item) } 2、for(index,value) in enumerate(array) { println(“Time \(index+1):\(value)") } 8、字典 1、let emptyDic1 = [:] //声明一个空的字典 2、let empty2 = Dictionary<String,Float>() //确定key和value的类型 3、var ariport = [“TYP”:”Tkkyo”,”Dub”:”Bublin"] 删除 airports[“THO”] = nil airports.removeValueForKey[“TYP”] 遍历 for key in airports.keys {//遍历所有的keys } for(key,value) in airport { println("\(key):\(value)") } 9元组 可以将任意数据类型组装成一个元素 元组在作为函数返回值的时候特别适用 let (x,y) = (1,2) let http404Error = (404,”Not Found”) //定义一个由Int 和String做成的元组 let gtt = (status:300,desc:”OK”) 可选类型(Optional) 1、nil不能用于非可选类型 2、如果代码中的常量或者变量需要适配值不存在,务必将她声明称可选类型 3、如果定义的可选类型的对象不提供默认值,该对象将自动设置为nil 这个值要么存在,并且等于x;要么就不存在 let name = "zhanggui" let number = "124" let ss:Int? = name.toInt() println(ss) 10?使用场景 1、声明Optional值变量 2、用在Optional操作中,用来判断是否响应后面的操作 11解包:用!(1、强制对可选量进行解包;2、声明隐式解包可选类型时,用于类中的属性) //解包方法一 var strValue:String? = "This is my Book" println(strValue!) //解包,确定strValue的值一定存在,不需要每次都验证他的值是否存在 let stringValue = strValue!.hashValue //必须解包才能获取可选量的属性或者方法 println(stringValue) //解包方法二 选择绑定 if let sValue = strValue { let stringValue = sValue.hashValue println(stringValue) } //隐式解包可选类型,在定义的时加! let assumedString:String! = "A apple" println(assumedString) println(assumedString.hashValue)