Chilly Zhong
Chilly Zhong

Reputation: 16793

How to concatenate two strings on iPhone?

How to connect string "Hello" and string "World" to "HelloWorld"? Looks like "+" doesn't work.

Upvotes: 13

Views: 40382

Answers (6)

raj
raj

Reputation: 31

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

Upvotes: 3

Ricardo Barroso
Ricardo Barroso

Reputation: 773

Bill, I like yout simple solution and I'd like to note that you can also eliminate the space between the two NSStrings:

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

Upvotes: 1

DKATDT
DKATDT

Reputation: 908

there's always NSMutableString..

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

Note:

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

Upvotes: 5

Garrett
Garrett

Reputation: 8090

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

That should do the trick, although I am sure there is a better way to do this, just out of memory. I also must say this is untested so forgive me. Best thing is to find the stringWithFormat documentation for NSString.

Upvotes: 39

Bill Heyman
Bill Heyman

Reputation: 211

If you have two literal strings, you can simply code:

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

This is a useful technique to break up long literal strings within your code.

However, this will not work with string variables, where you'd want to use stringWithFormat: or stringByAppendingString:, as mentioned in the other responses.

Upvotes: 10

Christopher
Christopher

Reputation: 412

How about:

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

Upvotes: 28

Related Questions