2014-12-28 98 views
0

當我嘗試使用Xcode 6中的if/else語句與Swift時出現錯誤。這是我其他/如果聲明幫助迅速

} else if countElements(sender.text) == 1, 2 

它告訴我: '串'

類型不符合協議'_CollectionType'

如何在一條線上比較兩個值?

+0

是的,我需要它看看1或2. – Cam193

回答

1

您可以使用「||」 =「或」

} else if countElements(sender.text) == 1 || countElements(sender.text) == 2 { 

} 
+0

這是最簡單的方法嗎?或者我可以使用像} else if countElements(sender.text)== 1,2? – Cam193

+0

不,你不能做這樣的兩個比較。 –

+0

是的,就像在蘋果的Dev庫上一樣,它們的整數值就像這樣,除了它們使用「let」語句。如let x =(1,2) – Cam193

0

對方回答正確地顯示,以使斯威夫特2個對比的方式,但是這可以在一個聲明中感謝斯威夫特的模式匹配操作來完成。例如:

if 1...2 ~= countElements(sender.text) { 
    println("count is 1 or 2") 
} 

基本上,所提供的說法是正確的,如果你的字符串中的字符數是包含地1和2之間

0

您還可以使用contains全局函數,它提供了一個範圍,要檢查包含的元素:

contains(1...2, countElements(sender.text))