2011-08-18 110 views
2

我知道這是一個非常簡單的問題,但我應該在哪裏放置||。下面如果我想檢查CAF和AAC?謝謝!在哪裏||

if ([[file pathExtension] isEqualToString:@"caf"]) 

回答

4
if ([[file pathExtension] isEqualToString:@"caf"] || 
    [[file pathExtension] isEqualToString:@"aac"]) 

注意 - 這是一個文字比較所以它不區分大小寫 - 如果你想做一個case insensitive itive比較:

if ([[file pathExtension] compare:@"caf" options:NSCaseInsensitiveSearch] == NSOrderedSame || 
    [[file pathExtension] compare:@"aac" options:NSCaseInsensitiveSearch] == NSOrderedSame) 
+0

很酷,謝謝! –

6
if ([[file pathExtension] isEqualToString:@"caf"] || [[file pathExtension] isEqualToString:@"aac"]) 
+0

非常感謝您的幫助。 –

3

你必須兩次測試:

if ([[file pathExtension] isEqualToString:@"caf"] || 
    [[file pathExtension] isEqualToString:@"aac"]) 

或者,通過這樣做可以避免一些重複這樣的:

NSString *ext = [file pathExtension]; 
if ([ext isEqualToString:@"caf"] || 
    [ext isEqualToString:@"aac"]) 
+1

這種方法也會佔用稍少的內存:) –

0

||意思是「或」在目標c中。因此,這意味着if (a == 1 || a == 2)如果a等於1或者等於2。所以:

==等於

& &和

||或