更容易在Obj-C中添加换行符

时间:2014-09-07 04:09:06

标签: objective-c

我有以下代码:

for (BNRItem *item in self.items) {
    [descriptionString appendString:[item description]];
    [descriptionString appendString:@"\n"];

}

有没有办法在一行而不是两行?

3 个答案:

答案 0 :(得分:3)

[descriptionString appendString:[NSString stringWithFormat:@"%@\n", [item description]]];

答案 1 :(得分:1)

大多数人都会将stringWithFormat用于所有内容,但您可以使用stringByAppendingString执行此操作,例如: :

for (BNRItem *item in self.items) {
    [descriptionString appendString:[[item description]stringByAppendingString:@"\n"]];
 }

如果我在代码中的很多地方都这样做,我会在NSString上设置一个单行类别,e。 G。

@implementation NSString (LineEnding)

- (NSString*)plusNewLine {
  return [self stringByAppendingString:@"\n"];
}
@end

然后您可以编写如下代码:

    [descriptionString appendString:item.description.plusNewLine];

答案 2 :(得分:1)

假设descriptionStringNSMutableString,请使用:

for (BNRItem *item in self.items) {
    [descriptionString appendFormat:@"%@\n", item];
}

无需在description上明确调用item方法。