美文网首页
1.4.Swift 3常用操作符

1.4.Swift 3常用操作符

作者: CDLOG | 来源:发表于2018-12-25 14:20 被阅读0次

赋值操作符

等号右边的值赋值给等号左边的变量:

//: #### Basic assignment
let a = 20
var b = 10
基本算术运算操作符
let sum = a + b
let sub = a - b
let mul = a * b
let div = a / b
let mod = a % b

“Swift 3不再允许浮点数取模。例如:8 % 2.5这样的写法在Swift 3中将会报错。如果要对浮点数取模,只能这样: 8.truncatingRemainder(dividingBy: 2.5)。”

复合运算操作符

Swift还支持把赋值和算数运算符组合起来:

//: #### Compound assignment

b += 10 // b = b + 10
b -= 10 // b = b - 10
b *= 10 // b = b * 10
b /= 10 // b = b / 10
b %= 10 // b = b % 10

“Swift不会把数字自动转换成Bool类型。在需要Bool值的地方,你必须明确使用一个Bool变量。”

“Swift 3中不再支持自增(++)和自减(--)操作符,使用它们的前缀和后缀版本都会得到一个编译器错误。因此,需要+1/-1的时候,只能使用b += 1和b -= 1来实现。”

比较操作符

Swift支持以下常用的比较操作:

//: #### Comparison
let isEqual     = sum == 10
let isNotEqual  = sum != 10
let isGreater   = sum >  10
let isLess      = sum <  10
let isGe        = sum >= 10
let isLe        = sum <= 10

除此之外,Swift还支持两个用于比较对象引用的操作符:Identity operator,它们用来判断两个操作数是否引用同一个对象,我们在后面讲到面向对象编程的时候,会进一步提到这两个操作符。

//: Identity operator

//===
//!==
三元操作符
/*
* if condition {
*     expression1
* }
* else {
*     expression2
* }
*
*/

let isSumEqualToTen = isEqual ? "Yes" : "No"

在Swift里,一些“日常”的if...else...判断,可以使用下面的三元操作符来替代:cond ? expr1 : expr2。

Nil Coalescing Operator

这是一个Swift特有的操作符,用来处理和Optional有关的判断:

// opt != nil ? opt! : b

var userInput: String? = "A user input"
let value = userInput ?? "A default input"

如果opt是一个optional,当其不为nil时,就使用optional变量自身的值,否则,就使用??后面的“默认值”。

Range operator

闭区间range operator

我们用下面的方式表达一个包含begin和end的闭区间:begin ... end:

//: Closed range operator
// begin...end

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

半开半闭区间range operator

我们用下面的方式表达一个[begin, end)的半开半闭区间:begin ..< end:

//: Half-open range operator
// begin..<end [begin, end)

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

逻辑运算符

Swift支持三种常用的逻辑运算:NOT,AND和OR。它们都返回一个Bool:

//: #### Logic operator

let logicalNot = !isEqual
let logicalAnd = isNotEqual && isLess
let logicalOR  = isGreater  || (isLess && isLe)

相关文章

  • 1.4.Swift 3常用操作符

    赋值操作符 等号右边的值赋值给等号左边的变量: “Swift 3不再允许浮点数取模。例如:8 % 2.5这样的写法...

  • 2018-10-09

    C基础入门Python(一) 1、常用操作符 1)算术操作符 指数:3**2=9取商:3.0//2=1.0 2)赋...

  • RxJava2 中常用操作符和Subject常用子类说明

    RxJava2 中常用操作符和Subject常用子类代码练习及说明。ReactiveX 系列所有操作符以及RxJa...

  • 2017-12-07

    python常用操作符分为四种——算数操作符,赋值操作符,比较操作符逻辑操作符 数据结构——标量,序列,映射(字典...

  • RxJava常用操作符

    简介 总结一下RxJava常用的操作符,这样方便自己查询。 常用操作符如下 create()— 通过函数从头开始创...

  • RxJava(十)--转换操作符

    常用转换操作符 toList、toSortedList、toMap等 实例与功能介绍 1. toList操作符 代...

  • Flutter Dart基础语法

    1.常量定义 一些常用的判断属性 int数字类型中常用的函数[绝对值 double 字符串] 2.操作符 3.字符...

  • RxSwift 学习笔记

    整理学习过程 Binder 常用操作符详解

  • Kotlin常用操作符总结

    常用操作符 1、? 操作符
    表示对象可能为空,或者对象可以为空 2、 ?: 操作符
    相当于 i...

  • Java编程思想(三)

    第3章 操作符 这一章主要讲了java中的操作符。跟你平时用的都一样,这里讲一些平时不经常用的特例。 3.1 测...

网友评论

      本文标题:1.4.Swift 3常用操作符

      本文链接:https://www.haomeiwen.com/subject/xwtlkqtx.html