2014-02-18 88 views
4

我想比較數值到彼此,但我得到的警告「比較不同符號的整數:'NSInteger'(又名'inti)和'NSUInteger'(又名'unsigned int' 。)iOS比較NSUInteger與NSInteger

這是必然的,因爲我做的),但我怎麼解決這個警告這是提高警告代碼:

if (page >= self.controllers.count || page < 0) 
    return; 

頁面可以是-1所以它是一個NSInteger的但計數返回一個NSUInteger。

回答

8

而不是使用NSInteger的頁面和-1,使用NSUInteger和d使用-1的NSNotFound。

然後你比較相同的類型。

if (page >= self.controllers.count || page == NSNotFound) 
    return; 
+0

所以,當我通過-1我應該通過NSNotFound。你是這個意思嗎? – Haagenti

+0

是的,確切地說。您正在使用-1來指示沒有頁面。相反使用NSNotFound。 –

+0

我剛剛檢查,當我通過-1它自動NSNotFound是真的嗎? – Haagenti