用变量追加字符串

Pet*_*zes 12 xcode objective-c nsstring nsmutablestring ios

我是一个来自Objective-C的java人.在java中,要向字符串添加变量,您必须执行以下操作:

someString = "This string is equal to " + someNumber + ".";
Run Code Online (Sandbox Code Playgroud)

我不知道如何在Objective-C中做到这一点.我有一个NSMutableString我想添加到字符串中间的.我该怎么做呢?

我试过了:

NSString *someText = @"Lorem ipsum " + someMutableString;
NSString *someText = @"Lorem ipsum " + [someMutableString stringForm];
Run Code Online (Sandbox Code Playgroud)

还有一些其他的东西,似乎都没有用.也+,s 互换了s.

Rud*_*uis 29

你可以使用appendString:,但一般来说,我更喜欢:

NSString *someText = [NSString stringWithFormat: @"Lorem ipsum %@", someMutableString];
NSString *someString = [NSString stringWithFormat: @"This is string is equal to %d.", someInt];
NSString *someOtherString = [NSString stringWithFormat: @"This is string is equal to %@.", someNSNumber];
Run Code Online (Sandbox Code Playgroud)

或者,或者:

NSString *someOtherString = [NSString stringWithFormat: @"This is string is equal to %d.", [someNSNumber intValue]];
Run Code Online (Sandbox Code Playgroud)

等等...

这些字符串是自动释放的,因此请注意不要失去它们的价值.如有必要,请保留或复制它们并在以后自行释放.


Lou*_*uie 8

试试这个:

NSMutableString * string1 = [[NSMutableString alloc] initWithString:@"this is my string"];

[string1 appendString:@" with more strings attached"];

//release when done
[string1 release];
Run Code Online (Sandbox Code Playgroud)


Tre*_*vor 6

你需要使用 stringByAppendingString

NSString* string = [[NSString alloc] initWithString:@"some string"];
string = [string stringByAppendingString:@" Sweet!"];
Run Code Online (Sandbox Code Playgroud)

不要忘记[string release];当你完成的时候.