Swift 提供了两个方便表达一个区间的值的运算符。
 闭区间运算符

 闭区间运算符(a...b)定义一个包含从a到b(包括a和b)的所有值的区间。 ‌ 闭区间运算符在迭代一个区间的所有值时是非常有用的,如在for-in循环中:
 ... {
     println("\(index) * 5 = \(index * 5)")
 }
 // 1 * 5 = 5
 // 2 * 5 = 10
 // 3 * 5 = 15
 // 4 * 5 = 20
 // 5 * 5 = 25
 关于for-in,请看控制流。
 半闭区间

 半闭区间(a..b)定义一个从a到b但不包括b的区间。 之所以称为半闭区间,是因为该区间包含第一个值而不包括最后的值。

 半闭区间的实用性在于当你使用一个0始的列表(如数组)时,非常方便地从0数到列表的长度。
 let names = ["Anna", "Alex", "Brian", "Jack"]
 let count = names.count
 ..count {
     println("第 \(i + 1) 个人叫 \(names[i])")
 }
 // 第 1 个人叫 Anna
 // 第 2 个人叫 Alex
 // 第 3 个人叫 Brian
 // 第 4 个人叫 Jack
 数组有4个元素,但0..count只数到3(最后一个元素的下标),因为它是半闭区间。

Swift区间运算符的更多相关文章

  1. Swift - 区间运算符(... 和 ..<)

    区间运算符可以用来表示两个操作数之间的范围集合. 1,闭区间运算符:a...b 1 2 3 for iCount in 512...1024{      //从512遍历到1024(包括1024) } ...

  2. 初学swift笔记运算符(二)

    swift 中的运算符 import Foundation //字符类型 var char: Character = "a" char="b" println( ...

  3. Swift 基本运算符

    前言 Swift 语言支持大部分标准 C 语言的运算符,并且改进了许多特性来使我们的代码更加规范,其中主要包含算数运算符.区间运算符.逻辑运算符.关系运算符.赋值运算符.自增自减运算符.溢出运算符等. ...

  4. swift基础--运算符

    (1)加减乘除 (2)三目运算,切记后面的空格如果不加会报错的.估计是苹果的bug. (3)聚合运算符,省却了一个判断,很人性化 (4)区间运算符 //加减乘除等等 let a = 2 let b = ...

  5. 4.Swift教程翻译系列——Swift基本运算符

    英文版PDF下载地址http://download.csdn.net/detail/tsingheng/7480427 运算符是指一个特殊的符号,能够用来查看.更改值或者相加.比方说加法运算符+能够讲 ...

  6. Swift - 12 - 区间运算符和for-in

    //: Playground - noun: a place where people can play import UIKit var str = "Hello, playground& ...

  7. swift的运算符

    1.什么是运算符?它有什么作用? 运算符是一种特定的符号或者表达式.它用来验证.修改.合并变量. 2.运算符有哪些? 运算符有很多,很多朋友学的很烦.这里我依据它的作用把它分为几块来介绍: a:赋值运 ...

  8. 1. Swift基本变量|运算符|控制流

    Swift基于cocoa Touch框架,苹果官方为了保证Swift的可靠性,结合多种语言的特性,同时独立了一套属于自己的单独语言,结合了C,C++,OC,Java等语言. 基本变量: 1 . swi ...

  9. Swift - 高级运算符介绍

    除了基本运算符之外,Swift还支持位运算和位移运算,包括:   1,按位取反运算:操作符是 ~ 2,按位与运算:操作符是 & 3,按位或运算:操作符是 | 4,按位异或运算:操作符是 ^ 5 ...

随机推荐

  1. Java学习笔记——浅谈数据结构与Java集合框架(第一篇、List)

    横看成岭侧成峰,远近高低各不同.不识庐山真面目,只缘身在此山中. --苏轼 这一块儿学的是云里雾里,咱们先从简单的入手.逐渐的拨开迷雾见太阳.本次先做List集合的三个实现类的学习笔记 List特点: ...

  2. spring boot --- 初级体验

    Spring boot的介绍我就不多说了,网上可以自己看一下. 它的优点就是:快!适合小白,没有复杂的配置文件. 缺点也很明显:坑有些多, 文档略少,报错有时不知道该如何处理. 下面做个最简单的入门: ...

  3. NodeJS安装第一个工程

    一.刚接触Node.js,下载好安装包后,一路Next,安装好后,结构目录如下 在命令行窗口输入node -v 和npm -v 二.建立一个Node.js工程 1.(控制台窗口)全局安装了expres ...

  4. VS2013各版本激活密钥

    Visual Studio Ultimate 2013 KEY(密钥):BWG7X-J98B3-W34RT-33B3R-JVYW9 Visual Studio Premium 2013 KEY(密钥) ...

  5. CPU Affinity

    Reference: [1] http://www.linuxjournal.com/article/6799 Soft vs. Hard CPU Affinity There are two typ ...

  6. Servlet路径映射

    Serlvlet路径映射 当一个请求发送到servlet容器的时候,容器先会将请求的url减去当前应用上下文的路径作为servlet的映射url. 容器默认请求的是一个Servlet,所以不会直接根据 ...

  7. c语言项目开发流程一部曲

    一.c项目开发总体分如下图所示 二.对每一步的解析 1.需求文档分析,本例以电子词典作为例子 列出每一个需求以及每一个需求的每一个特点,将其归纳 为一张表. 2.设计数据结构 设计数据结构,也就是确定 ...

  8. 微信小程序大全(上)(最新整理 建议收藏)

  9. html学习笔记 - meta link

    <!DOCTYPE html> <html lang="en"> <head> <!-- 编码格式 --> <meta cha ...

  10. Azure IoT Hub和Event Hub相关的技术系列-索引篇

    Azure IoT Hub和Event Hub相关的技术系列,最近已经整理了不少了,统一做一个索引链接,置顶. Azure IoT 技术研究系列1-入门篇 Azure IoT 技术研究系列2-设备注册 ...