swift基本语法 (三)

来源:互联网 发布:数据交换平台etl 编辑:程序博客网 时间:2024/06/10 01:55

一、字典

//创建字典//@{@"key":@"value"};//[String:NSObject] 类型是以后做ios开发中最常见的一种格式let dic = ["name":"zj","age":30]//获取valuedic["name"]//遍历字典for key in dic.keys{   print(dic[key])}//利用元祖类型遍历数组,会自动将字典中的key赋值给元祖中的第一个变量,将字典中的value赋值给元祖中的第二个变量//注意:第一个是key,第二个是valuefor(k,v) in dic{   print(k)   print(v)}//新增key / valuevar dic2 = ["name":"zhujia","age":24]dic2["gender"] = "man"dic2//更新//如果对应的key在字典中没有,就会新增dic2["name"] = "xiuxiu"//删除dic2.removeValueForKey("name")dic2//合并字典var dict3 = ["score":99]for (key,value) in dict3{   dic2[key] = value}dic2

二、字符串

//注意:OC中的字符串是NSString,swift中的字符串是String //OC中的字符串是一个对象,继承自NSObject//swift中的字符串是一个结构体//swift中的字符串的性能比oc中的高//在oc中定义字符串 @"" swift中用""var str:String = "Hello,playground"var str1:String = "zj"//拼接var str2 = "cool"str1 += str2//格式化let num = 30let name = "zj"//目标: name = lnj ,age = 30var str3 = "name = \(name),age = \(num)"//09:08:13//注意:所有的值都必须放在数组中,哪怕只是一个值也需要放到数组中var str4 = String(format: "%02d: %02d: %02d", arguments: [9, 8, 13])//截取//在swift中需要截取字符串,建议使用oc的字符串进行截取,因为在swift中string的字符串截取方法使用起来非常复杂 //swift中的字符串可以和oc中的字符串可以进行非常方便的转换var str5 = "zhujia 87v5" as NSStringvar str6 : NSString = "zhujia very v587"var subStr = str5.substringWithRange(NSMakeRange(0, 3))//在swift中的字符串是支持直接遍历的var str7 = "www.baidu.com"for c in str7.characters{   print(c)}

三、函数

/*swift定义函数的格式语义:将前面的计算结果返回给 ->返回值func 函数名称(参数列表)->返回值{   执行代码}*///没有返回值没有参数//如果函数没有返回值,就写Void//如果函数没有返回值还可以简写//1.()替代Void//2.可以省略箭头 ->() ->Voidfunc say() -> Void{  print("hello")}say()func say2() -> (){   print("hello")}say2()func say3(){   print("hello")}say3()//有返回值没有参数func getNumber() -> Int{   return 998}print(getNumber())//有参数没有返回值//- (void)sum:(int)a b:(int)b//swift2.0中,会自动将形参类别中的第二个参数开始的参数名称作为便签,以便于提高阅读性func sum(a: Int,b: Int){   print(a + b)}sum(10, b: 20)//添加标签,添加外部参数//x/y称之为外部参数,a/b称之为内部参数func sum2(x a: Int,y b: Int){    print(a + b)}sum2(x: 10, y: 20)//有参数有返回值func sum4(a: Int,b: Int) ->Int{  return a + b}sum4(10, b: 30)


0 0