Est-il nécessaire d’atsortingbuer une chaîne à une variable avant de la comparer à une autre?

Je veux comparer la valeur d’un NSSsortingng à la chaîne “Wrong”. Voici mon code:

 NSSsortingng *wrongTxt = [[NSSsortingng alloc] initWithFormat:@"Wrong"]; if( [statusSsortingng isEqualToSsortingng:wrongTxt] ){ doSomething; } 

Dois-je vraiment créer un NSSsortingng pour “Wrong”?

UILabel je comparer la valeur du text d’un UILabel à une chaîne sans affecter la valeur de l’étiquette à une chaîne?

Dois-je vraiment créer un NSSsortingng pour “Wrong”?

Non, pourquoi ne pas simplement faire:

 if([statusSsortingng isEqualToSsortingng:@"Wrong"]){ //doSomething; } 

Utiliser @"" crée simplement un littéral de chaîne, qui est un NSSsortingng valide.

Puis-je comparer la valeur d’un UILabel.text à une chaîne sans affecter la valeur de libellé à une chaîne?

Oui, vous pouvez faire quelque chose comme:

 UILabel *label = ...; if([someSsortingng isEqualToSsortingng:label.text]) { // Do stuff here } 
 if ([statusSsortingng isEqualToSsortingng:@"Wrong"]) { // do something } 

Brian, cela vaut également la peine de jeter ici – les autres ont bien sûr raison de ne pas avoir à déclarer une variable de chaîne. Cependant, la prochaine fois que vous souhaitez déclarer une chaîne, vous n’avez pas besoin de procéder comme suit:

 NSSsortingng *mySsortingng = [[NSSsortingng alloc] initWithFormat:@"SomeText"]; 

Bien que ce qui précède fonctionne, il fournit une variable NSSsortingng conservée que vous devrez ensuite explicitement publier après l’avoir utilisée.

La prochaine fois que vous voulez une variable de chaîne, vous pouvez utiliser le symbole “@” d’une manière beaucoup plus pratique:

 NSSsortingng *mySsortingng = @"SomeText"; 

Cela sera automatiquement annulé lorsque vous en aurez fini pour éviter les memory leaks aussi …

J’espère que cela pourra aider!

Vous pouvez également utiliser les méthodes de la classe NSSsortingng qui créeront également une instance à libération automatique et qui auront plus d’options, comme le formatage des chaînes:

 NSSsortingng *mySsortingng = [NSSsortingng ssortingngWithSsortingng:@"abc"]; NSSsortingng *mySsortingng = [NSSsortingng ssortingngWithFormat:@"abc %d efg", 42];