0
您好我想從一個NSMutableArray中獲取一個整數值,我稱爲programStack,它包含所有數字。這個方法是一種撤銷方法,所以當我點擊撤消時,它會擦除堆棧中的最後一個項目並返回前一個選項。當我嘗試獲取數字時,方法undoVariable在返回字符串時具有正確的值,但在顯示時出現錯誤值。一個例子是在陣列上有2,3。我在UndoVariable中擦除3和字符串顯示2,然後當我使用self.display.text顯示它時,顯示1.57539e-302。這可能是指針地址?這是代碼。Objective-C:從NSMutableArray檢索整數值
- (IBAction)undoPressed {
NSString* string = self.display.text;
if(userIsInTheMiddleOfEnteringANumber){
if([self.display.text length])
string = [string substringToIndex:([string length]-1)];
} else {
string = [NSString stringWithFormat:@"%g",[self.brain undoVariable]];
NSLog(@"string is %@", string);
}
self.display.text = string;
}
-(NSString*) undoVariable{
if(self.programStack)
[self.programStack removeLastObject];
if(self.programStack){
NSString* string = @"";
string = [string stringByAppendingString: [self.programStack lastObject]];
NSLog(@"string = %@", string);
NSLog(@"self.display.text = %@", [self.programStack lastObject]);
return string;
}