《Swift·基本操作符》

1、操作符种类

①一元操作符:只有一个操作数。如-,++,--,总之就是一个数本身的操作,如a++,--a这种操作。

②二元操作符:操作符出现在两个操作数之间。如a+b,a*b这种。

③三元操作符:三个操作数直接。常见的就是三目运算了,如a?b:c。

2、赋值操作符:=等号

这里说一下元组类型赋值的话,等号右面的值会一一赋给左边对应的变量或者常量。

var (x,y,z) = (1,2,3)   //即 x = 1, y =2 ,z = 3

3、赋值操作符:+、-、*、/、%

这里只记录一点,与其他语言不同的是,Swift的数值默认是不允许溢出的。例如,下面的 代码无法编译通过。

let x:Byte  = 1234 // 1234超出了Byte的取值范围
var y:Byte = 12*33 //Swift编译器编译时会计算12*33的值,很明显,它们计算的结果超出了Byte的范围。

与其他语言不同,Swift是可以对浮点数求余的。例如,8.5 % 2.5 = 1.0。

在Swift语言中,整形和浮点类型都可以进行自加/自减操作。

4、复合赋值操作符,其实就是操作符和赋值操作同时使用罢了。例如+=、-=操作。

var a = 1
a += 2 //相当于 a = a + 2

注意:复合赋值运算没有返回值,也就是说,

let b = a += 2 //错误

是错误的写法。

5、比较操作符

基本的就是等于(==)、不等于(!=)、大于(>)、小于(<)、大于等于(>=)、小于等于(<=)。

在Swift语言中还支持恒等于(3个符号,===)和不恒等(一个感叹号和两个等号,!==)两个比较操作符。这两个操作符用来判断连个对象是否引用了同一个对象实例。

6、三元条件操作符即三目运算

逻辑表达式?为true时的答案:为false时的答案

var value:Int
var flag:Bool = true
// 不使用三元逻辑情况
if flag
{
 value = 1
}
else
{
 value = 2
}
//使用三元
value = (flag?1:2) //理论括号应该可以不加

7、区间操作符

分为闭区间和半开半闭区间。

闭区间用3个点(...)表示,半开半闭用(..<)表示。

let names = ["a","b","c"]
let count = names.count
//闭区间写法
//i会从0循环到count-1
for i in 0..<count
{
println("第\(i+i)个人叫\(names[i])")
}

//以上输出结果为
//第1个人叫a
//第2个人叫b
//第3个人叫c

//半开半闭写法
for i in 0...count-1
{
println("第\(i+i)个人叫\(names[i])")
}

8、逻辑操作符

①逻辑非 !a

②逻辑与 a&&b

③逻辑或 a||b

跟其他语言无异,不多说。

但是还是罗嗦一句吧,书中云括号会指定优先级。

var a = true,b = true, c = true,d = false
if( a && (b&&c) || d)//这里会优先执行(b&&c) 博主一直以为是左右顺序的,涨姿势了...
{
println("yes")
}
else
{
println("no)
}



你可能感兴趣的:(逻辑运算,操作符)