2011-02-04 112 views

回答

4
NSString *url = (NSString*)[item objectForKey:@"link"]; 
+5

注意,從`id`類型轉換是可選的,所以你可以寫`的NSString * URL = [項目objectForKey://「鏈接」]; ` – 2011-02-04 00:36:48

4

最大具有正確的鑄造語法,但爲了安全起見,你會希望做一些在運行時實例檢查的,因爲它在Objective-C的編譯時是無法保證的類型在一個數組或字典的對象是你期待什麼:

NSObject *obj = [item objectForKey:@"link"]; 
if ([obj isKindOfClass:[NSString class]]) { 
    NSString *stringValue = (NSString *)obj; 
    // Do something with the NSString 
} else { 
    // You can alternatively raise an NSException here. 
    NSLog(@"Serious error, we expected %@ to be an NSString!", obj); 
} 
+0

請注意,來自`id`的類型轉換是可選的,因此您可以編寫`NSString * stringValue = obj;` – 2011-02-04 00:37:25

相關問題