运算符
1.一元运算符
1.负号运算符
var number1 = 10 var number2 = -number1 println(number2)
2.正号运算符(不做任何操作,为了跟负号运算符成对出现)
var number3 = +number2 println(number3)
3.b = a++ 相当于a先赋值,再完成自增运算。b = ++a 相当于a先完成自增运算,再去赋值。
var number4 = number1++ println(number4)
2.二元运算符
1.赋值运算符
在swift中,赋值语句没有任何返回值,不可以跟if-else相结合
let a:Double = 1.0
2.算术运算符
取余运算符
在swift中,与c语言中的取余运算符有些不同,swift中的取余运算符左右两侧可以为小数,这也是swift有所改进的地方
var fetch = 10.0 % 3.3 println(fetch)
3.组合赋值运算符
var combination = 10 combination += 10 println(combination)
4.比较运算符
<,>,<=,>=,==
5.逻辑运算符
注意短路现象
let logicalNumber1 = 14 let logicalNumber2 = 20 logicalNumber1 < logicalNumber2 || 3 > 2
6.区间运算符
1.全闭区间
logicalNumber1...logicalNumber2 for sectionNumber1 in logicalNumber1...logicalNumber2 { println(sectionNumber1) }
2.半开半闭
let aaaaa = 15..<25 for sectionNumber2 in aaaaa { println(sectionNumber2) }
7.空合运算符
?代表只是个可选类型,不知道是否有值 !代表是可选类型,且有值
var optionalNumber:Int? = 10 println(optionalNumber!)
7.1 ??前面必须是可选类型,前后类型必须一致(如果??前面的值(optionalNumber)为nil,则结果是??后面的值(20))
let emptyNumber = optionalNumber ?? 20 println(emptyNumber)
3.三元运算符
形式结构:a > b ? a : b
字符串
1.字符串的字面量
“ayang”就是字面量
var string = "ayang"
转义字符,类比C语言,\t,\n,\’,\”
var string2 = "\"ayang\"" var string3 = "\'ayang\'" println(string) println(string2) println(string3)
2.swift中的字符串和OC中的字符串的区别
2.1没有可变类型和不可变类型之分,再swift中,字符串到底可不可变取决于声明变量的类型,如果定义的是let就是不可变,定义的是var就是可变的
2.2swift中的字符串是值类型,而OC当中不加特殊声明的话是引用类型,不用担心内存问题,swift已经做了优化
var appendingStr1 = "ayang" var appendingStr2 = appendingStr1 appendingStr2 += "dashuaige" println(appendingStr1) println(appendingStr2)
2.3在swift中string类型和OC中的Nsstring类型做了完美的对接,就是swift中string可以使用Nsstring的方法
3.字符串的初始化方法
var initString = String()
4.字符串拼接
+可以进行字符串拼接,必须是可变字符串,必须用var修饰
initString += "shuai" println(initString) let character1:Character = "a" initString.append(character1) println(initString)
5.字符串进行大小写转换
var changeString = "good boys"
改成大写
var changeString2 = changeString.uppercaseString println(changeString2) var changeString3 = changeString.lowercaseString println(changeString3)
首字母大写方法 capitalizedString
var changeString4 = changeString.capitalizedString println(changeString4)
6.字符串插值
在swift输出语句中没有格式化输出占位符,想要实现这样的效果,我们要用到字符串插值格式:”\()”
var insertNumber = 18 println("insertNumber = \(insertNumber)")