swift中的基本运算符BasicOperators

swift中的基本运算符:赋值运算符、数学运算符(包括取余, 余数运算符、浮点数取余、增量与减量运算符、复合赋值操作符和一元减运算符)、比较运算符、三目运算符、范围运算符(包括封闭范围运算符和半封闭区域运算符)、逻辑运算符(!、&&、||以及复合运算符)…

赋值运算符

let b = 10
var a = 5
a = b
println(a)

/*
//与C及Objective-C不同,Swift中赋值运算符并不将自身作为一个值进行返回。所以以下的代码是不合法的:
//此特性帮助你避免因粗心将 等于(==)写成 赋值运算符 (=) 而引起的错误。因为 if a = b 这样写是无效的
if a = b {
//错误, 因为 a = b 并不会返回一个值
}
*/

数学运算符

var x1 = 1 + 2
var x2 = 10.0 / 2.5

//两个字符串通过+号组成一个新的字符串
let dog: Character = "��"
let cow: Character = "��"
let dogCow = dog + cow

//不同于C和Objective-C,默认情况下Swift的算术运算符不允许值溢出。
//你可以通过Swift的溢出运算符来选择值的溢出情况(例如 a & + b)

①取余, 余数运算符
//余数运算符(a % b)a是b的几倍并且返回被留下的值(叫作余数)
var x3 = 9 % 4

②浮点数取余
var x4 = 8 % 2.5

③增量与减量运算符
var x5 = 0
let y1 = ++x5
let y2 = x5++  // 与c、oc一样

④复合赋值操作符
var x6 = 1
x6 += 2     //等价于 x6 = x6 + 2

⑤一元减运算符
let three = 3
let minusThree = -three        // -3
let plusThree = -minusThree    // 3

⑥一元加运算符, 一元加运算符返回的值, 不做任何的变动
let minusSix = -6
let alsoMinusSix = +minusSix  // -6

比较运算符
和c、oc一致:==、!= 、>、<、>=、<=
三目运算符
其形式为 question? answer1: answer2
三元条件运算符是下面的代码的简化:

if question {
answer1
} else {
answer2
}

比如:

let contentHeight = 40
let hasHeader = true
let rowHeight = contentHeight + (hasHeader ? 50 : 20)
println(rowHeight)       // 结果为90

范围运算符
①封闭范围运算符, (a…b)定义了一个范围从a到b,并且包含a和b的值,即[a,b]

for index in 1...5 {
    println("\(index) times 5 is \(index * 5)")
}

②半封闭区域运算符(包头不包尾), (a..b)定义了范围从a到b,包含a的值,但是不包含b的值,即[a,b)

let names = ["Anna", "Alex", "Brian", "Jack"]
let count = names.count

for i in 0..count {
    println("Person \(i) is called \(names[i])")
}

逻辑运算符
①逻辑非运算符 !

let entry = false
if !entry {
    println("ok")
}

②逻辑与运算符 &&

let enteredDoorCode = true
let passedRetinaScan = false
if enteredDoorCode && passedRetinaScan {
    println("Welcome!")
}else {
    println("access denied")
}

③逻辑或运算符 ||

let hasDoorKey = false
let password = true
if hasDoorKey || password {
    println("Welcome!")
}else {
    println("access denied")
}

④复合逻辑表达式

if enteredDoorCode && passedRetinaScan || hasDoorKey || password {
    println("Welcome!")
}else {
    println("access denied")
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值