有没有更好的方法来实现在一行中连接多个字符串?或者在这样做时有任何建议。
NSString *string1 = @"one";
NSString *string2 = @"one";
NSString *string3 = @"one";
NSString *appendedText = @"";
[appendedText = [[string1 stringByAppendingString: string2] stringByAppendingString: string3]
有没有更好的方法来实现在一行中连接多个字符串?或者在这样做时有任何建议。
NSString *string1 = @"one";
NSString *string2 = @"one";
NSString *string3 = @"one";
NSString *appendedText = @"";
[appendedText = [[string1 stringByAppendingString: string2] stringByAppendingString: string3]
安全合适吗?当然。
假设您有:
NSString *a = @"hay";
NSString *b = @"bee";
NSString *c = @"see";
您可以使用stringByAppendingString:
将它们全部连接起来:
cat = [a stringByAppendingString:[b stringByAppendingString:c]];
您可以使用stringByAppendingFormat:
将它们全部连接起来:
cat = [a stringByAppendingFormat:@"%@%@", b, c];
您可以使用stringWithFormat:
:
cat = [NSString stringWithFormat:@"%@%@%@", a, b, c];
您可以将它们放在一个数组中,然后使用componentsJoinedByString:
:(只是为了好玩,使用数组文字语法)
array = @[ a, b, c];
cat = [array componentsJoinedByString:@""];
您可以将它们收集在一个可变字符串中:
NSMutableString *temp = [a mutableCopy];
[temp appendString:b];
[temp appendString:b];
cat = [temp copy]; // if you want to make sure result is immutable
所有这些方法都可以。这是我选择使用的建议:
您可以使用stringByAppendingFormat:
[string1 stringByAppendingFormat:@"%@%@",string2,string3]
这是一个参考
你也有NSMutableString但就语法而言,它看起来差不多
丹尼尔