2012-10-05 31 views
0

我有一個包含值爲1或0的值爲true或false的對象。例如,讓我們調用我的對象Stuff,東西看起來像這樣。將對象中的值從1更改爲true

@interface Stuff : NSObject { 

NSString *_boolValue1; 
NSString *_boolValue2; 
} 

當我填充我同值的實體,例如:東西*東西= [[東西的alloc]初始化...]如果我使用的NSLog顯示存儲在boolValue1和boolValue2他們可能輸出一個1的值或者0.我想用NSLog輸出類似[stuff.boolValue1 == 1? @「真假」]。我錯過了什麼?我得到的格式指定輸入「身份證」的錯誤,但參數的類型爲「BOOL」 ......

NSString *myStr = [NSString stringWithFormat:@"%@", [stuff.boolValue1 isEqualToString:@"1" ? @"true" : @"false"]]; 

回答

1

您支架只是在錯誤的地方,作爲isEqualToString運算符返回布爾。

NSString *myStr = [NSString stringWithFormat:@"%@", [stuff.boolValue1 isEqualToString:@"1"] ? @"true" : @"false"]; 

,或者更簡單,更典型的方式,使用建議從下面的評論:

NSString *myStr = [NSString stringWithFormat:@"%@", [stuff.boolValue1 boolValue] ? @"true" : @"false"]; 
+3

爲什麼不使用'intValue',甚至'boolValue' –

+0

當然,這是可行的。我直接針對OP的問題直接談到他的發言有什麼問題。 – diatrevolo

+0

@Richard,我有這樣做的理由。 – brianhevans