问答详情
源自:7-7 Swift-函数类型

字符串比较

就本节讲的,如果比较两个字符串,字典序,应该如何比较,有没有类似于C中的函数cmp(a, b) 

提问者:快到小利碗里来 2014-12-03 23:12

个回答

  • 快到小利碗里来
    2014-12-04 22:51:56

    弱弱的问一句哈,下面代码调用没问题

    func sortStringByLength(a:String, b:String) -> Bool {

        return countElements(a) < countElements(b)

    }


    func sortStringByDictSequeceAndLength(a:String, b:String ) -> Bool {

        if countElements(a) == countElements(b) {

            return a < b        //这部分这么写没问题

        }

        else {

            return countElements(a) < countElements(b)

        }

    }


    var list = ["d", "abc", "a", "acd", "b", "bc"]

    sorted(list, sortStringByDictSequeceAndLength)


    但, 这么写就不行,为啥?

    var cmp:Bool = "abc" > "adc"



  • l1uyub0b0b0
    2014-12-04 20:10:43

    在两个字符串中使用大于号、小于号和等于等于就是做两个字符串之间的字典序比较了。