几乎全手打,转载请注明出处,尊重别人的劳动成果,谢谢
本人也是swift方面的新手
之前做过一段时间Objective C,提交过APP和SDK,对IOS开发还算入门。强烈建议看这个系列的Blog的时候,开XCode 的playground来看看运行的效果
playground可以动态的给出执行结果
一、常量和变量这里首先说的是,swfit可以使用分号结尾,也可以不使用,但是,一行要执行多个语句,一定要分号
变量声明用var
常量声明用let
常量和变量的名字可以是Unicode字符,但是不能包含数学符号,箭头,保留的字符(例如:while)
let constVar = 10 var tempVar = 11.0
let 黄文臣 = "程序员" constVar++ //Wrong constVar是常量 tempVar++ println(tempVar)//输出Var并且换行
例如:
let radius = 1 + 0.06//swift会推断出radius是浮点数Double类型
var tempVar:String = "1234" 表示tempvar是一个String类型的变量
println("The current output is \(tempVar)")
let binaryInteger = 0b1111 let octalInteger = 0o21 let hexadecmalInteger = 0x21 let expFloat = 1.25e-2// 1.15* 10^-2 = 0.0125
let four = 4 let varDouble = 0.1111 let tempDouble = Double(four) + varDouble//则,tempDouble为Double类型
多个值表示的一个序列,熟悉Python的同学对这个应该不陌生 let tupleExample = ("Hwc","程序员") let (name,jop) = tupleExample println("The jop of \(name) is \(jop)") 可以获得一部分元素,忽略的部分用下划线表示 let (name,_) = tupleExample 也可以使用下标访问 let name = tupleExample.0 let jop = tupleExample.1 元组对于一个函数有多个返回值来说非常有用
let var1 = "12" let intVar1 = var1.toInt()
if intVar1!= nil{ let result = intVar1! }
var temp:Int? temp = nil//right var temp:Int temp = nil //Wrong
let intVar = var1.toInt()
if let tempVar = intVar{//Do something else }
隐式解析可选类型
var temp1:Int? = 10
var intAlwaysExist:Int! = temp1 println(intAlwaysExist)//Do not need to use intAlwaysExist! ro check if intAlwaysExist != nil隐式解析可选类型相对于可选类型的优点是不需要每次都判断可选类型是否存在,然后用解析符号!来取值。