swift入门第二章运算符、字符串

来源:互联网 发布:ibm医疗大数据 编辑:程序博客网 时间:2024/06/05 14:28

运算符

1.一元运算符

1.负号运算符

var number1 = 10var number2 = -number1println(number2)

2.正号运算符(不做任何操作,为了跟负号运算符成对出现)

var number3 = +number2println(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.3println(fetch)

3.组合赋值运算符

var combination = 10combination += 10println(combination)

4.比较运算符

<,>,<=,>=,==

5.逻辑运算符

注意短路现象

let logicalNumber1 = 14let logicalNumber2 = 20logicalNumber1 < logicalNumber2 || 3 > 2

6.区间运算符

1.全闭区间

logicalNumber1...logicalNumber2for sectionNumber1 in  logicalNumber1...logicalNumber2 {    println(sectionNumber1)}

2.半开半闭

let aaaaa = 15..<25for sectionNumber2 in aaaaa {    println(sectionNumber2)}

7.空合运算符

?代表只是个可选类型,不知道是否有值 !代表是可选类型,且有值

var optionalNumber:Int? = 10println(optionalNumber!)

7.1 ??前面必须是可选类型,前后类型必须一致(如果??前面的值(optionalNumber)为nil,则结果是??后面的值(20))

let emptyNumber = optionalNumber ?? 20println(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 = appendingStr1appendingStr2 += "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.uppercaseStringprintln(changeString2)var changeString3 = changeString.lowercaseStringprintln(changeString3)

首字母大写方法 capitalizedString

var changeString4 = changeString.capitalizedStringprintln(changeString4)

6.字符串插值

在swift输出语句中没有格式化输出占位符,想要实现这样的效果,我们要用到字符串插值格式:”\()”

var insertNumber = 18println("insertNumber = \(insertNumber)")
0 0