Question

J'ai trois objets chaîne:

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

Les valeurs de firstName et lastName sont reçus à partir de NSTextFields.

Je veux alors concaténer les deux chaînes et placez le résultat dans fullname.

Voici le code que j'utilise:

fullName = [firstName stringByAppendingString:lastName];

Cependant, le résultat ne met pas un espace entre les deux noms (par exemple johnsmith).

Comment puis-je ajouter dans l'espace? Je voudrais le résultat à ressembler (John Smith).

Était-ce utile?

La solution

La façon la plus simple est la suivante:

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

i.e.. ajoutez l'espace, puis ajoutez la lastName.

Autres conseils

Je suis étonné par la longueur des autres réponses:

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

Ce qui est normal. Vous devrez ajouter l'espace vous-même.

(NSString*) description { return [[[NSString alloc] 
                          initWithFormat:" %@ %@”, 
                          firstname, 
                          lastname] autorelease]; }
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top