Swift 2.1错误"二元运算符||不能应用于两个Bool操作数"

时间:2015-12-09 14:31:16

标签: swift sorting

除了令人困惑的语言(逻辑运算符不能处理两个布尔操作数,什么?),这是令人沮丧的,因为我的代码在我的项目中的Playground工作,但当我复制时相同的功能到控制器我得到引用的错误。

如果有更好的方法,我的目标是对一组对象进行排序。对象包括时间组件,我想对其进行排序。时间存储为格式的字符串" mm:ss"因为这些不是在给定日期时间发生的离散事件,而是发生(例如)"每周二17:45-18:30"的重复事件。

代码感觉相当简单:

func sortStringAsTime(first:String, second:String){
     let firstSet = first.componentsSeparatedByString(":")
     let secondSet = second.componentsSeparatedByString(":")

     return firstSet[0] < secondSet[0] ||   // Sort by hour
            firstSet[0] == secondSet[0] &&  // hours are the same
            firstSet[1] < secondSet[1]      // sort by minutes
}

错误来自return语句。再次,在Playground中按预期工作,但在将其复制/粘贴到我的控制器代码时给出了错误。

1 个答案:

答案 0 :(得分:8)

嗯,该死的。所以这很有趣。我想到了。给出的错误是垃圾和无用的,但真正的问题是我的函数没有声明一个返回类型。不确定为什么游乐场没有抱怨,我不确定该错误信息应该如何给我这种见解。在我尝试返回$("#exampleModal").on("shown.bs.modal", function(){ $("#textareaID").blur(); }); 并继续让其他代码调用排序以便移动之后,我注意到了它。

修正如下:

curl -d "grant_type=authorization_code" -d "code=4/bA5MjGf4emw3hkhCVuTZeJUjughQgJ21l-dCyfpPHdg" -d "client_id=757054420263-0ajoc014s2dn91b8iko0vj2jtl5pdjfh.apps.googleusercontent.com" -d "client_secret=xMElPZXcU-ajMUNUwKTksKpV" -d "redirect_uri=https://www.googleapis.com/auth/cloud-platform" https://accounts.google.com/o/oauth2/token