iOS swift字符串不能相等

时间:2015-04-15 21:05:29

标签: ios swift comparison

我的应用程序中有以下代码

    println("currentTitle : '" + btnDOW.currentTitle! + "'")
    println("gobj_DOWs[iobj_NearbyLocationsVM.DOWToUse].DOWName: '" + gobj_DOWs[iobj_NearbyLocationsVM.DOWToUse].DOWName + "'")

    if btnDOW.currentTitle!.uppercaseString != gobj_DOWs[iobj_NearbyLocationsVM.DOWToUse].DOWName.uppercaseString
    {
        //reload the data
        GPSLocationChanged()
    }

两个陈述的println输出如下:

  

currentTitle:'星期三'

     

gobj_DOWs [iobj_NearbyLocationsVM.DOWToUse] .DOWName:' Wednesday'

但是,我的if语句中的值不是相等的。我知道这是因为GPSLocationChanged线上的断点和断点总是被击中。任何想法为什么??

1 个答案:

答案 0 :(得分:0)

所以我改变了代码如下,因为它现在似乎有效。

    println("currentTitle : '" + btnDOW.currentTitle! + "'")
    ls_WorkTitle = btnDOW.currentTitle!


    println("gobj_DOWs[iobj_NearbyLocationsVM.DOWToUse].DOWName: '" + gobj_DOWs[iobj_NearbyLocationsVM.DOWToUse].DOWName + "'")
    ls_WorkDOWName = gobj_DOWs[iobj_NearbyLocationsVM.DOWToUse].DOWName

    //if btnDOW.currentTitle!.uppercaseString != gobj_DOWs[iobj_NearbyLocationsVM.DOWToUse].DOWName.uppercaseString

    if ls_WorkTitle.uppercaseString != ls_WorkDOWName.uppercaseString
    {
        //reload the data
        println("Dow Of Week Values are different")
        GPSLocationChanged()
    }

在打印行和if语句之间不应该更改这些值中的任何一个。为什么在我比较之前将它们放入新变量中是必要的?这太荒谬了。

这是我第一次使用IOS开发,到目前为止,不得不说它几乎处于开发平台和语言(Swift)图腾柱的底部。