zoukankan      html  css  js  c++  java
  • Swift

    区间运算符可以用来表示两个操作数之间的范围集合。


    1,闭区间运算符:a...b
    1
    2
    3
    for iCount in 512...1024{
         //从512遍历到1024(包括1024)
    }


    2,半闭区间运算符:a..<b

    1
    2
    3
    4
    5
    var fruts = ["apple","orange","banana"]
    let iCount = fruts.count
    for i in 0..<icount{
        println("第(i+1)个水果是(fruts[i])")
    }


    3,字符串范围也可以使用区间运算符

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    //字符串截取
    let words = "Hangge.com"
     
    //不使用区间运算符
    let index = advance(words.startIndex, 4)
    let index2 = advance(words.startIndex, 6)
    var range1 = Range<String.Index>(start: index, end: index2)
    var rangeStr1 = words.substringWithRange(range1) //ge
     
    //使用区间运算符
    var range2 = advance(words.startIndex, 4)..<advance(words.startIndex, 6)
    var rangeStr2 = words.substringWithRange(range2) //ge


    4,区间运算符除了返回一个Range外,还可以接受Comparable的输入,返回ClosedInterval或HalfOpenInterval

    所以我们可以用这个特性检查字符串里的字符是不是都是合法字符(比如是不是都是小写)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    let words = "Hangge.com"
            
    let interval = "a"..."z"
    for c in words {
        if !interval.contains(String(c)){
                println("(c)不是小写字母")
        }
    }
             
    //H不是小写字母
    //.不是小写字母
  • 相关阅读:
    GO语言并发
    NEERC2017:L
    bzoj2823[AHOI2012]信号塔
    bzoj1336[Balkan2002]Alien最小圆覆盖
    bzoj1069[SCOI2007]最大土地面积
    ACM2017Tsukuba:H
    ACM2015沈阳:B-Bazinga
    bzoj2724[Violet 6]蒲公英
    [bzoj4066]简单题
    [bzoj2125]最短路
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/4838077.html
Copyright © 2011-2022 走看看