Pergunta

Eu tenho três objetos string:

NSString *firstName;
NSString *lastName;
NSString *fullName;

Os valores para firstName e lastName são recebidos de NSTextFields.

Então eu quero para concatenar as duas cordas e colocar o resultado em fullname.

Este é o código que estou usando:

fullName = [firstName stringByAppendingString:lastName];

No entanto, o resultado não coloca um espaço entre os dois nomes (por exemplo JohnSmith).

Como posso adicionar no espaço? Eu gostaria o resultado para se parecer com (John Smith).

Foi útil?

Solução

A maneira mais simples é esta:

fullname = [[firstName stringByAppendingString:@" "] stringByAppendingString:lastName];

i. anexar o espaço, e, em seguida, acrescentar o lastName.

Outras dicas

Estou espantado com o comprimento das outras respostas:

fullname = [NSString stringWithFormat:@"%@ %@", firstname, lastname];
fullName = [@[firstName, lastName]
             componentsJoinedByString:@" "];

Isso é normal. Você terá que adicionar o espaço a si mesmo.

(NSString*) description { return [[[NSString alloc] 
                          initWithFormat:" %@ %@”, 
                          firstname, 
                          lastname] autorelease]; }
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top