NSMutableString没有追加,它总是为空

时间:2012-05-20 13:42:38

标签: objective-c nsmutablestring

我正在尝试设置NSMutablearray,但总是得到null值,它不会在迭代时使用不同的值进行更新。这是代码:

NSMutableString *tipo = [NSMutableString stringWithString:@""];

        if (self.canas.on){
             [tipo stringByAppendingString: @"0"];   
        }

        if (self.copas.on){
            if ([tipo length]==0){
                 [tipo stringByAppendingString: @"1"];

            }else{
                [tipo stringByAppendingString:@",1"];
            }
        }

        if (self.comer.on){
            if ([tipo length]==0){
             [tipo stringByAppendingString: @"2"];

        }else{
            [tipo stringByAppendingString:@",2"];
            }
        }

非常感谢

1 个答案:

答案 0 :(得分:4)

因为您应该使用appendString:方法,而不是stringByAppendingString:

不同之处在于第一个确实将参数附加到接收器,而第二个只返回这样的值(接收器保持不变)。第二条消息可以发送到NSString,而第一条消息只发送给NSMutableString

希望你看到差异。