guard的使用
- guard是Swift新增语法.
- guard语句必须带有else语句当条件表达式为true时候跳过else语句中的内容,执行语句组内容;条件表达式为false时候执行else语句中的内容,跳转语句一般是return、break、continue和throw
guard 条件 else {
//条件语句
break
}
代码...
例:
var age = 18
func online(age : Int) -> Void {
guard age >= 18 else {
print("回家去")
return
}
print("可以上网")
}
online(age) // 可以上网
数组
数组(Array)是一串有序的由相同类型元素构成的集合
数组中的集合元素是有序的,可以重复出现
Swift中的数组
swift字典类型是Array,是一个泛型集合
数组分成:可变数组和不可变数组
使用let修饰的数组是不可变数组
使用var修饰的数组是可变数组
//数组
//b不可变数组
let arr1 : [String] = ["邱学伟","王珂惠","妈妈"]
let arr2 = ["邱学伟","王珂惠"]
let arr3 = ["邱学伟","烟台大学","不羁阁","疯火科技"]
//可变数组
var arrM1 = arr3;
var arrM2 : [Any] = ["身高",1.83 ]
//添加元素
arrM1.append("10000000")
//删除元素
//删除最后一个元素并且会把最后一个元素返回
arrM1.removeLast()
//移除指定下标元素
arrM1.remove(at: 0)
/遍历数组
//通过下标遍历
for i in 0..<arrM1.count{
// print(arrM1[i])
}
//直接遍历元素值
for item in arrM1{
// print(item)
}
//区间遍历
arrM1.append("老婆")
for item in arrM1[0..<2]{
// print(item)
}
//数组合并 必须相同类型数组
let arr01 = ["小码哥","黑马",7000] as [Any]
let arr02 = ["邱学伟","努力"] as [Any]
let arr03 = arr01 + arr02
字典
字典允许按照某个键来访问元素
字典是由两部分集合构成的,一个是键(key)集合,一个是值(value)集合
键集合是不能有重复元素的,而值集合是可以重复的,键和值是成对出现的
Swift中的字典
Swift字典类型是Dictionary,也是一个泛型集合
Swift中的可变和不可变字典
使用let修饰的数组是不可变数组
使用var修饰的数组是可变数组
//字典
//不可变字典
let dict1 : Dictionary<String,AnyObject> = ["name":"邱学伟" as AnyObject,"age":24 as AnyObject]
let dict2 : [String : AnyObject] = ["name" : "邱学伟" as AnyObject, "height" : 1.83 as AnyObject]
let dict3 : [String : Any] = ["name" : "邱学伟", "age" : 24]
//可变字典
var dictM1 : Dictionary<String, AnyObject>
var dictM2 : [String : Any]
var dictM3 = ["name" : "邱学伟", "age" : 24] as [String : Any]
//操作字典
//增
dictM3["height"] = 1.83
//删
dictM3.removeValue(forKey: "age")
//改
dictM3["老婆"] = "王珂惠"
//遍历字典
//key
for key in dictM3.keys{
// print(key)
}
//value
for value in dictM3.values {
// print(value)
}
//key和value
for (key,value) in dictM3 {
print(key , value)
}
//字典合并
var dictM4 = ["学历" : "本科","电话" : "110"] as [String : Any]
for (key,value) in dictM3 {
dictM4[key] = value
}