Swift鲜为人知的特性:~=运算符是什么?

云栖号资讯:【点击查看更多行业资讯】
在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来!


Swift运算符中的~=算不上出名,很多人并不清楚它是做_ f ` u * } 2 7什么的,该如何运用。简而言之,使用这个运算符,可以查看一个范围是否包含某个值。

本文将通过一些例子,带你了解这个运算符的用处和用法。开始吧!

考虑这样一种常见情况:在没有遇到任何错误的情况% t 6 u 3 7 N下,要启动网络请求并打出数据,因此要创建一个URLS{ & a X C Z s gessionDataTask,如下所Q w S W示:

Swift鲜为人知的特性:~=运算符是什么?

上述代码中就使用了~=,以检查状态码整数值是否在200到300之间(不包括两极),如果是,则结果是成功的。否则,将输出一条错误消息。

更改print语句并启动任务,实际上会得到有效响应,状态码是200:

Swift鲜为人知的特性:~=运算符是什么?

Swift鲜为人知的特性:~=运算符是什么?

代码在一个Xcode Playground中运行

再来看看另一个在后台使用~=运算符的例子。假设有一个简单的Coordinate结构并将其w 4 V y & ` _ O实例化:

              let value: (latitude:CLLocationDegrees, longitude: CLLocationDegrees)
}
let coordinate =Coordij b ~ C ]nate(
value: (
latitude: 40.7128,
longitude: 74.0060
)
)

使用switch语句,查看这个坐标是否在纽约市的坐s ) E R - v标范围内(该实例被简化):

               case (40...41, 73...76):
print("Hmm... seems like we found NewYork City")
default:
print("Unknown coorb J I ? :dinates")
}

指定纬度值和经度值的范围。在后台,~=运算符使用==运算符将范围内的每个值与C G t l z 0 2coordinate的值进行比较:

Swift鲜为人知的特性:~=运算符是什么?

Swift鲜为人知的特性还有很多D R C M T,比如值绑定模式、vq | / + w z 0 K +DSP框架、CustomStringConvertible协议、y T z , A ! 8 !类和静态的区别等等。这些概念你都明白嘛?如果不了解的话,赶快去查漏S z % F ` f补缺吧。

【云栖号T 8 / s 9 ] o n H在线课堂】每天都有产品技术专家分享!
课程地址:https://yqh.aliyun.com/live

立即加入社群,与专家面对面,及时了解课程最新动态!
【云栖号在线课堂 社群】h] b ( qttps:( W % l m//c.tb.cn/F3.Z8gvnK

原文发布时间:2020-06-08
本文作者:读芯术
本文来自:p u [ S A * F 0 J“cocoachina”,了解相关信息可以关注“cocoachina”