您的位置:首页 > 移动开发 > Swift

Swift(四、基本运算符及高级操作符)

2015-10-31 15:07 232 查看
1、Swift入门学习笔记(第一版),对Swift的基础知识点进行梳理总结。知识点一直在变,只是作为参考,以苹果官方文档为准~

2、在学习完基本的知识点以后会结合官方文档及相关资料,在此版本的基础上进行添加更改。

四、基本运算符及高级操作符

注:Swift中与C和OC相同的部分本文不作累述

基本运算符

Swift 支持大部分标准 C 语言的运算符,且改进许多特性来减少常规编码错误

1、赋值运算符

赋值符(=)不返回值,以防止把想要判断相等运算符(==)出错(=)符导致的错误

let a = 1
var b = 2
//if b = a {
//  编译不通过,其他语言可以通过,b=a不返回值,避免犯错
//}


2、算数运算符

算术运算符(+,-,*,/,%等)会检测并不允许值溢出,以此来避免超出范围的范围时导致的异常结果

2.1、浮点数取余操作

var x = 7%2.5
print(x)            // 2.0


3、范围运算符

3.1、闭区间运算符

(a…b) 三个点定义a到b的范围,包含a,b

for index in 1...5 {
print(index)
}


Output:

1
2
3
4
5


3.2、半开区间运算符

a..

for index1 in 1..<5 {
print(index1)
}


Output:

1
2
3
4


高级操作符

1、位运算符

按位反,位与,位或,位异或此处不讲解,对左移右移带过

x>>a
: x右移a位,无符号整数高位0补位,有符号高位符号位补位

x<<a
:x左移a位,低位补0

2、溢出运算符

当向一个整数赋超过它容量的值是,Swift会报错而不是生成一个无效的数,更加安全

var potentialOverFlow = Int8.max
//potentialOverFlow += 1            //报错


此时,可以选择溢出运算符让系统在数值溢出时草去截断操作

溢出加法 &+

溢出减法 &-

溢出乘法 &*

//以溢出加法为例说明
var testOverFlow = UInt8.max
testOverFlow = testOverFlow &+ 1
print(testOverFlow)                 //值为0


UInt8的范围是0-255,对255进行+1操作,超出UInt8能容纳位数导致数值溢出,留在UInt8边界内的即为计算结果

注:有符号数值溢出计算要考虑符号位

3、运算符函数

这部分在学完函数部分再补充
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  iOS开发 Swift 运算符