第三章、语句和表达式

2017-05-17  本文已影响0人  泡水鱼干

3.1语句

swift中语句可以加;也可以不加

3.2运算符与表达式

3.2.1常用术语-元

元表示运算符所使用的目标数值个数(操作数)

分类:一元运算符、二元运算符、三元运算符

3.2.2赋值运算符

=赋值运算符

var a=1赋值表达式

3.2.3算数运算符

标准算数运算符:+ - */

+运算符可以用来连接字符串

注意:在进行除法运算时

当两个操作数为整数,所得结果为整数

当两个操作数为浮点数,所得结果为浮点数

3.2.4取余运算

符号:%

注意:

结果符号取决于被除数

两个操作数可以为整数,也可以为浮点数

3.2.5自增、自减

++ —

分为:先增、先减、后增、后减

3.2.6一元减运算符

取反-

3.2.7一元加运算符

+基本没用

3.2.8位运算符

一个字节8位

位运算符

&与都为1,则为1

|或有1,则为1

^异或相同为0,不同为1

~取反0变1,1变0

<<左移将一个数的各二进制位全部左移N位,右补0

>>右移将一个数的各二进制位全部右移N位,对符号位,高位补0

3.2.9溢出运算符

开发者有意进行溢出操作使用

&+溢出加法

&-溢出减法

&*溢出乘法

&/溢出除法

&%溢出取余

值的上溢出:当一个值达到可以承载的最大值后,如果进行加或者乘运算导致的溢出

var a=UInt8.max

a=a&+1

值的下溢出:当一个值达到可以承载的最小值后,如果进行减运算导致的溢出

var a=UInt8.min

a=a&-1

除0溢出:除以0产生的溢出

var x=0

var y=10&/x

3.2.10比较运算符

<<=

>>=

==!=

3.3.11三元运算符

表达式1?表达式2:表达式3

表达式1真输出表达式2,否则表达式3

3.3.12逻辑运算符

&&||!

3.3.13范围运算符

封闭范围运算符

语法:(操作数1...操作数2)

说明:加括号与不加括号都可以

举例:

import Foundation

for index in 1...5{

print("\(index)times is \(index)")

}

半封闭运算符..<

var names=["a","b","c"]

var count=names.count

for i in 0..

print("第\(i)个元素:\(names[i])")

}

3.3.14复合赋值运算符

*=a*=ba=a*b

/=a/=ba=a/b

%=a%=ba=a%b

+=a+=ba=a+b

-=a-=ba=a-b

<<=a<<=ba=a<

>>=a>>=ba=a>>b

&=a&=ba=a&b

^=a^=ba=a^b

|=a|=ba=a|b

3.3.15求字节运算符

说明:计算数据类型所占的字节数的运算符

语法:

MemoryLayout<类型>.size

MemoryLayout.size(ofValue:变量名)

举例:

import Foundation

let a:Int=10

let lenb=MemoryLayout.size

let len=MemoryLayout.size(ofValue:a)

print(len)

3.3.16强制解析

说明:可选类型,不可直接进行运算,需要用!强制解析

举例:

import Foundation

var value:Int?=5

var a=value!-2

print(a)

3.3.17类型转换

注意:没有隐式转换

语法:类型(变量/常量)

import Foundation

let a:UInt8=2

let b:UInt16=2000

let c=UInt16(a)+b

print(c)

上一篇 下一篇

猜你喜欢

热点阅读