var label = "ascdsf"
let width = 94
label = label + String(width)
print(label);
//可以在一行中声明多个常量或者变量,用逗号隔开
var x = 0,y = 0, z = 0 //如果代码中有不需要改变的值,只需要改变值声明为变量
//------元组------把多个值组合成一个复合值。元组内的值可以是任意类型,并不要求是相同类型
let http404Error = (404, "Not Found")//这个元组被描述为---一个类型为(int ,String)的元组 print(http404Error)
//可以把任意顺序的类型组合成一个元组,这个元组可以包含所有类型。如(int,int,int,int)等
//可以将一个元组的内容分解成单独的常量和变量,然后就可以正常使用它们了
let (statusCode, statusMessage) = http404Error print(statusCode)
//当只需要一部分元组值时,分解的时候就可以把要忽略的部分用下划线(_)标记 let (justth,_) = http404Error print(justth)
//通过下标来访问元组中的单个元素,下标从零开始 print(http404Error.0)
//元组重点---元组在临时组织值的时候很有用,但是并不适合创建复杂的数据结构。如果数据结构并不是临时使用,那就使用类或者结构体而不是元组。
//-------可选------使用可选(optionals)来处理值可能缺失的情况--可选表示:有值或者没有值
//当你确定可选包确实含值之后,你可以在可选的名字后面加一个感叹号(!)来获取值。这个惊叹号表示“我知道这个可选有值,请使用它。”这被称为可选值的强制解析(forced unwrapping):
var serverReCode: Int? = 404//serverReCode包含一个可选的Int值404 serverReCode = nil//现在不包含值
//重点:nil不能用于非可选的常量和变量。
var survery: String? //survery被自动设置为nil----:Swift 的nil和 Objective-C中的nil并不一样,在Objective-C中,nil是一个指向不存在对象的指针。但是在Swift中,nil不是指针--它是一个确定的值,用来表示值缺失
//----隐式解析可选-----把想要用作可选的类型的后面的问号(string?)改成感叹号(string!)来声明一个隐式解析可选,当可选被第一次赋值之后就可以确定之后一直有值的时候,隐式解析可选非常有用。隐式解析可选主要被用在swift中类的构造过程中, let possibleString: String? = "An optional string." print(possibleString!) // 需要惊叹号来获取值 // 输出 "An optional string."
let assumedString: String! = "An implicitly unwrapped optional string." print(assumedString) // 不需要感叹号 // 输出 "An implicitly unwrapped optional string."
//注意:如果一个变量之后可能变成nil的话请不要使用隐式解析可选。如果你需要在变量的生命周期中判断是否是nil的话,请使用普通可选类型。
let age = -3 assert(age <= 0, "A person's age cannot be less than zero") //1.把值转换成字符串的方法:把值写到括号里,并且在括号之前写一个反斜杠
let str = "\(width)" debugPrint(width) print(str)
//2.使用方括号[]来创建数组和字典,并使用下标或者键(key)来访问元素 var shopArr = ["1","2","3"] shopArr[0] = "4" print(shopArr) var shopDic = [ "as":"12", "sd":"23", ] shopDic["df"] = "34" print(shopDic)
//要创建一个空数组或者字典,使用初始化语法
let emptyarr = Array() print(emptyarr) let emptyDictionary = Dictionary() print(emptyDictionary) let empty = Dictionary()
print(empty)
//如果类型信息可以被推断出来,你可以用[]和[:]来创建空数组和空字典----就像你声明变量一样
//--------控制流---------
//使用if和switch来进行条件操作,使用for-in、for、while和do-while来进行循环。包裹条件和循环变量括号可以省略,但是语句体的大括号是必须的
let sourceArr = [12,23,34,45,56,67,78,89,90]
for sorce in sourceArr {
if sorce > 60 {
print("及格")
}else{
print("不及格")
}
}