Как конкатенировать две строки на iPhone?

Как подключить строку "Hello" и строку "World" к "HelloWorld"? Похоже, что "+" не работает.

Ответы

Ответ 1

NSString *string = [NSString stringWithFormat:@"%@%@", @"Hello", @"World"];
NSLog(@"%@", string);

Это должно сделать трюк, хотя я уверен, что есть лучший способ сделать это, просто из памяти. Я также должен сказать, что это непроверено, так простите меня. Лучше всего найти документацию stringWithFormat для NSString.

Ответ 2

Как насчет:

NSString *hello = @"Hello";
NSString *world = @"World";
NSString *helloWorld = [hello stringByAppendingString:world];

Ответ 3

Если у вас есть две литеральные строки, вы можете просто закодировать:

NSString * myString = @"Hello" @"World";

Это полезный способ разбить длинные литеральные строки внутри вашего кода.

Однако это не будет работать со строковыми переменными, где вы хотите использовать stringWithFormat: или stringByAppendingString:, как указано в других ответах.

Ответ 4

всегда существует NSMutableString..

NSMutableString *myString = [NSMutableString stringWithString:@"Hello"];
[myString appendString: @"World"];

Примечание:

NSMutableString *myString = @"Hello"; // won't work, literal strings aren't mutable

Ответ 5

t3.text=[t1.text stringByAppendingString:t2.text];

Ответ 6

Bill, мне нравится ваше простое решение, и я хотел бы отметить, что вы также можете устранить пробел между двумя NSStrings:

NSString * myString = @"Hello"@"World";