componentsJoinedByString的问题

时间:2014-02-25 08:55:25

标签: ios objective-c nsmutablestring

我想用componentsJoinedByString创建一个 NSString ,然后添加一个NSMutableString。我怎么能这样做?

我知道在创建NSString时我无法更改它。我试过这个:

NSString *str = [NSString stringWithFormat: [this.array componentsJoinedByString:@ " , "], someMutableString];

但是这不会添加可变字符串。

汉克

3 个答案:

答案 0 :(得分:1)

想想简单!

[this.array componentsJoinedByString:@" , "]

返回一个字符串。现在,您可以附加两个字符串以形成一个stringByAppendingString:的新字符串,所以只需执行:

[[this.array componentsJoinedByString:@" , "] stringByAppendingString:someMutableString];

[正如其他人所指出的那样,当你起诉stringWithFormat:但你没有提供任何文字格式时你的方法是错误的 - 所以加入你的字符串的结果,作为第一个参数,被用作格式。您通常会看到编译器警告您有非文字格式]

答案 1 :(得分:0)

你忘记了Format Specifiers。这样做,

NSString *str = [NSString stringWithFormat:@"%@%@", [this.array componentsJoinedByString:@ " , "], someMutableString];

另见String Programming Guide

答案 2 :(得分:0)

你遗漏了一些基本的字符串操作

NSString *stringCombined = [NSString stringWithFormat:@"%@%@", [this.array componentsJoinedByString:@ " , "], someMutableString];

此链接是另一种方法

how to add concatenate multiple NSString in one String in iphone