0

我正在尝试设置一个 NSMutablearray,但总是得到空值,它不会在迭代中更新为不同的值。这是代码:

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

非常感谢

4

1 回答 1

4

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

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

希望你能看到区别。

于 2012-05-20T13:50:04.667 回答