2015-02-05 277 views
1

我需要檢查item是否與newItem不相同。 item類型是字符串,而newItem類型是(字符串)和Xcode抱怨它無法比較。在Swift中比較字符串相等:String!=(String)

for (index, item) in enumerate(components) { 
    let newItem = cleanItem(item) 
    if newItem != nil && newItem != item { 
     // update 
    } else { 
     // delete item 
    } 
} 
+0

會發生什麼? – 2015-02-05 21:22:59

+0

你可以給我們'cleanItem'的簽名嗎? – 2015-02-05 21:27:21

回答

0

我需要從字符串改變cleanItem返回類型爲String?因爲它需要被允許返回零。然後一切正常。理解混亂。

+0

由於您自己解決了這個問題,因此您可能希望刪除該問題或至少更新與實際問題相關的標題。它與將String與(String)進行比較無關,而是將String與nil進行比較。 – 2015-02-05 22:12:22

0

newItemTuple Type,所以你必須在比較之前提取值:如果你試着去`的newitem [0]`

if newItem.0 && newItem.0 != item {...} 
+1

在迅速,沒有必要這樣做。單個項目的元組與項目本身是相同的。 '(String)'與'String'沒有區別,可以直接比較(在Playground中試試:) – 2015-02-05 22:09:33

+0

不知道。謝謝@大衛:) – Armin 2015-02-06 01:43:23

相關問題