2015-09-04 127 views
0

使用此條件:如何突破一個while循環?

while let element = enumerator.nextObject() as? String 

請問有什麼可以添加基於遞減整數另一個條件:

var c=10 
while let element = enumerator.nextObject() as? String && c>0 { 
... 
c-- 
... 
} 

的錯誤是:

Optional type 'Bool' cannot be used as a boolean; test for '!= nil' instead 

回答

1

代替&&使用where條款:

while let element = enumerator.nextObject() as? String where c>0 { 
+1

它也可以用連詞運算符來完成嗎? – alecail

+0

@alecail不,你不能。儘管'&&'會更直觀'where'用於從布爾條件中分離可選綁定(檢查nil並創建一個新變量)。你可以在條件中使用'&&'。 – Qbyte