[英]objective-c if statement
所以這可能真的很簡單,但是由於某些原因我無法弄清楚。 當我運行以下代碼時,即使我以xcode進入調試器控制台並執行po [resultObject valueForKey:@"type"]
,也無法將它放入if
語句中,它返回0
。 我究竟做錯了什么? 謝謝你的幫助!
NSManagedObject *resultObject = [qResult objectAtIndex:i];
if (([resultObject valueForKey:@"type"])== 0) {
//do something
}
valueForKey:
的結果始終是一個對象-唯一等於0的對象為nil。 如果是數值,則為NSNumber。 無論如何,我想您想問一下[[resultObject valueForKey:@"type"] intValue]
。
您可以嘗試將NSManagedObject強制轉換為int(如果那實際上是...)
另外,您也不需要在[]周圍加上多余的括號
NSManagedObject *resultObject = [qResult objectAtIndex:i];
if ((int)[resultObject valueForKey:@"type"] == 0) {
//do something
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.