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;
}