Ich bin relativ neu in Objective C, aber nicht mit der Programmierung. Ich habe mich gefragt, wie Sie einen NSString an einen anderen anhängen können. Ich mache eine App, in der ein Benutzer einen grundlegenden Satz beenden muss, und ich frage mich, wie man die Zeichenkette, die der Benutzer eingegeben hat, erhält und an die aktuelle, die auf dem Bildschirm ist, anhängt?Wie man einen NSString an einen anderen NSString anfügt
Antwort
Ich denke, Sie suchen nach StringByAppendingString-Funktion von NSString. Siehe das Beispiel unten.
NSString *errorTag = @"Error: ";
NSString *errorString = @"premature end of file.";
NSString *errorMessage = [errorTag stringByAppendingString:errorString];
erzeugt die Zeichenfolge "Fehler: vorzeitiges Ende der Datei.".
Es sieht aus wie Sie Ihre Antwort haben, aber Sie können auch die stringWithFormat:
Methode, wie so verwenden:
NSString *sample1 = @"Hello";
NSString *sample2 = @"Being appended";
NSString *complete = [NSString stringWithFormat:@"%@%@", sample1,
sample2];
Dies auch unter Verwendung eines NSMutableString erreicht werden konnte:
NSMutableString *string = [NSMutableString stringWithString:@"String 1"];
[string appendString:@"String 2"];
Wenn Sie Daten (mehr Zeichenfolgen) in derselben Variablen anhängen möchten, dann ist 'NSMutableString' die tatsächliche Lösung. 'stringByAppendingString' ist nicht speicherfreundlich, wenn Sie Daten in derselben Variablen anhängen möchten. – Ans
Sie können nicht Fügen Sie einen NSString wirklich an einen anderen an, da der NSString der Klasse nicht veränderbar ist. Alle Standard-Datenstrukturen weisen veränderbare und nicht veränderbare Varianten auf (NSMutableString vs NSString, NSMutableArray vs NSArray usw.). Wenn Sie den Inhalt ändern möchten, ohne ein neues Objekt neu zuzuordnen, sollten Sie die veränderbare Version verwenden. Sie können einen neuen NSString neu mit:
NSString* string3 = [NSString stringWithFormat:@"%@%@",string1,string2];
Das ist schlecht für die Leistung aber so, wenn Sie es in einer Schleife oder einem Leistungs sensiblen Bereich (tun werden, dh Sie auf die gleiche Zeichenfolge immer anhängt über und über wieder) das ist garantiert ein Problem (ich habe diesen Fehler schon gemacht).
Stattdessen sollten Sie wahrscheinlich die NSMutableString verwenden und die zweite Zeichenfolge anhängen:
NSMutableString* string1 = [NSMutableString alloc] init];
[string1 appendString:string2];
- 1. Wie fügt man einen NSString in einen NSMutableString ein?
- 2. NSDictionary-Wert an einen NSString übergeben
- 3. Wie durchläuft man einen NSString und bekommt einen Substring?
- 4. So analysieren Sie einen NSString
- 5. Wie man einen NSString zu einem String in MonoTouch konvertiert
- 6. Wie passt man einen NSString optimal in ein Rechteck?
- 7. Wie man einen begrenzten NSString in NSArray aufteilt
- 8. NSString ascii konvertieren in NSString
- 9. Wie kann ich einen Int in einen NSString konvertieren?
- 10. Wie konvertiere ich einen NSMutableString in einen regulären NSString?
- 11. NSString Farbe
- 12. Wie erhält man die NSString-Größe, wenn NSString Emojis enthält?
- 13. Wie man einen Prozess in gdb anfügt
- 14. Wie man einen Listener an ein Optionsfeld anfügt
- 15. Trunkieren Sie einen NSString zu Breite
- 16. NSString Probleme
- 17. statische NSString Verwendung vs Inline-NSString-Konstanten
- 18. Wie NSString Bytes
- 19. Wie bekomme ich einen formatierten NSString aus Format und va_list?
- 20. Wie konvertiert man NSString zu CString?
- 21. NSString zu wchar_t *?
- 22. Wie konvertiert man NSNumber in NSString
- 23. als NSString
- 24. Objective C const NSString * vs NSString * const
- 25. Split ein NSString
- 26. NSString zu HTML
- 27. Wie nimmst du einen NSString aus einem NSMutableString?
- 28. Wie verwende ich NSDateFormatter, um einen NSString zu formatieren?
- 29. Wie durchläuft ich einen NSString in Ziel c?
- 30. Wie bekomme ich den Text von UITextField in einen NSString?
Vielen Dank! Das Beispiel funktioniert großartig! :) –