在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
再牛逼的梦想,也抵不住你傻逼似的坚持! 我跑啊跑啊,为的就是赶上那个被寄予厚望的自己。 三、运算符+表达式 swift允许重载运算符,比如 “+”你可以重载它 后续会详细介绍 赋值运算符 pass 算数运算符 大部分 pass,只说特殊的 19/4 结果是4 而不是5 //截断取整 借助ANSI C标准库中的<math.h> 中的数学函数 完成复杂数学运算 import Foundation var b = pow(3.2,5) //3.2的5次方 var c = sqrt(3.2) //平方根 0~10的随机数 var d = arc4random() %10 var e = sin(1.57) //1.57当成弧度 - 求负 溢出运算符 ,对溢出数据位进行截断,程序更加健壮 &+ ,&-,&*,&/,&% 有符号整数,最高位是符号位,0代表正数,1代表负数。 计算机 以补码的形式保存整数,正数的补码和源码相同,负数的补码 = 反码+1 (按位取反,最高位不变) 位移运算符: 左移N位相当于乘以2的N次方,右移则是除以2的N次方。 范围运算符: var range = 2...6 for num in range { pringtln(num*5) } a..<b 遍历数组的时候用(你懂的,因为从0开始嘛) let books = ["oc","swift","java","go"] for index in 0..<books.count { println(books[index]) } 比较运算符:=== 判断引用类型的变量,引用同一个对象时返回ture了 逻辑运算符: 两个的 会短路:就是前边表达式判断完,后边就不判断了,没有执行的机会,直接得出结果 && 与 有false则false & 与 但是 不会短路 三目运算符: var c =5 ,d = 5 c>d ?println("c大于d"):(c<d?println("c小于d"):println("c等于d")) nil 合并运算符: ?? a??b 判断a是否为nil,不为nil,返回a值,为nil,则返回默认b值,要求类型必须一致! 例 let defaultName = "renhairui" var name:String?= "engineer" println(name ?? defaultName) // 输出 engineer var nameNil :String? println(nameNil ?? defaultName) // 输出 renhairui 其实 a ?? b 相当于 a !=nil ?a!:b 四、流程控制 分支结构 循环结构 if else 要先处理范围小的情况 var age = 45 if age >60 { println("老年人") else if age>40{ println("中年人") }else if age>20{ } switch 不会继续执行下一个case var score = "c" switch score { println("优秀") fallthrough 贯穿 default: break 直接忽略 }
var score = 87 switch score{ case 91...100: println("优秀") case 同理 } var somePoint = (x:1,y:-4) switch somPoint { case (0,0): println("原点") case(_,0): println("X轴") case(0,_): println("Y轴") case(0...Int.max,0...Int.max): println("第一象限") } case 值绑定 var score= 178 switch score { case 91...100: println("youxiu") case 0..<60: println("") case let grade: println("输入的成绩\(grade)不合法")
} var somePoint = (x:2,y:0) switch somePoint { case (0,0): println() case(var x,0): println("位于X轴上,x值为\(x)") case(0,var y): println("位于Y轴上,y值为\(y)") case(x,y): println("位置为:\(x),\(y)") } where给case增加额外的判断条件 case var(x,y) where x>0 && y>0: println("\(x),\(y)位于第一象限") 循环体:被重复执行的代码 for 循环 可以同时指定多条初始化,也可以是一个包含逻辑运算符的表达式 for var b= 0,s=0,p =0; b<10 && s<4 &&p<10;p++ {
} return 可以结束整个方法 函数 break 完全结束一个循环,跳出循环体,无论在那种循环。 continue 忽略本次循环的剩下语句
|
请发表评论