我在檢查的是字符串的第一個字母是0,如果它是刪除它並再次調用的方法來檢查是否仍然有0.我調試了這個,它似乎是當它完成數字沒有0,它會倒退。代碼:遞歸方法Objective-C
-(NSString *)deleteZerosOnFirst:(NSString *)card
{
NSString *firstLetter = [card substringToIndex:1];
if ([firstLetter isEqualToString:@"0"]) {
card = [card substringFromIndex:1];
[self deleteZerosOnFirst:card];
NSLog(@"CARD: %@", card);
return card;
}
else {
NSLog(@"CARD: %@", card);
return card;
}
}
是不是使用for循環的只是這件事?爲什麼你需要使其遞歸? –
你能給我一些提示如何做到這一點?它應該迭代,直到滿足0不是第一個字符爲止。 – Stefan
你沒有在任何地方合併遞歸的結果。第一次調用的結果總是隻是原始參數減去一個初始的「@」0「'。而你的意思是「倒退」? –