我在Objective C中比較新,但沒有編程。我想知道如何將一個NSString附加到另一個NSString上。我正在製作一個應用程序,用戶必須完成一個基本句子,我想知道如何獲取用戶輸入的字符串並將其附加到屏幕上的當前字符串中?如何在另一個NSString上附加一個NSString
21
A
回答
41
我想你正在尋找NSString的stringByAppendingString函數。 請看下面的例子。
NSString *errorTag = @"Error: ";
NSString *errorString = @"premature end of file.";
NSString *errorMessage = [errorTag stringByAppendingString:errorString];
產生字符串「Error:過早結束文件。」。
13
看起來你有你的答案,但你也可以使用stringWithFormat:
方法,像這樣:
NSString *sample1 = @"Hello";
NSString *sample2 = @"Being appended";
NSString *complete = [NSString stringWithFormat:@"%@%@", sample1,
sample2];
31
這也可以通過使用一個的NSMutableString來實現:
NSMutableString *string = [NSMutableString stringWithString:@"String 1"];
[string appendString:@"String 2"];
+1
如果你想追加數據(更多的字符串)在同一個變量,那麼'NSMutableString'是實際的解決方案。當你想要在同一個變量中追加數據時'stringByAppendingString'不是內存友好的。 – Ans
2
你不能真正追加一個NSString到另一個,因爲類NSString不可變。所有的標準數據結構都有可變和不可變的變體(NSMutableString與NSString,NSMutableArray與NSArray等)。如果您想更改內容而不重新分配新對象,則需要使用可變版本。您可以通過重新建立一個新的NSString:
NSString* string3 = [NSString stringWithFormat:@"%@%@",string1,string2];
這是不好的表現,雖然,所以如果你打算這樣做,在一個循環或一些性能敏感的區域(即你不停地一遍又一遍追加到相同的字符串再次)這是保證會導致你一個問題(我犯了這個錯誤之前)。
相反,你應該使用的NSMutableString和第二個字符串追加到它:
NSMutableString* string1 = [NSMutableString alloc] init];
[string1 appendString:string2];
相關問題
- 1. 如何在一個NSString
- 2. 將一個NSString複製到另一個
- 3. 從另一個NSString和密鑰獲取加密的NSString
- 4. 一個NSString
- 5. 從一個NSString
- 6. 有一個NSString
- 7. 如何從一個NSString
- 8. 如何從一個NSString
- 9. 附加一個換行符到一個NSString
- 10. 在另一個類中使用NSString
- 11. 如何發送一個NSString到另一個視圖控制器
- 12. 綁定一個nsstring
- 13. 比較不同的NSString到一個nsstring
- 14. 一個NSString分離到的NSString(S)
- 15. 當我追加一個NSString與另一個NSstring它給我一個錯誤「EXC BAD ACCESS」?
- 16. 將一個NSString中的字符替換爲另一個NSString中的字符
- 17. NSPredicate測試NSString是否包含另一個NSString中的字符
- 18. 取NSString並修改它爲另一個NSString?
- 19. 如何在一個角度繪製NSString?
- 20. 包含在一個NSString一個「%」?
- 21. 從另一個.m文件訪問NSString
- 22. iPhone:從另一個類訪問NSString值
- 23. 在另一個類中使用一個類NSString?
- 24. 刪除NSString的一部分,並將其複製到另一個NSString
- 25. 將NSString附加到NSArray時只獲取一個值
- 26. 如何將一個NSString轉換爲NSDate?
- 27. 如何一個NSString轉換成NSDate的
- 28. 如何URL編碼一個NSString
- 29. iPhone目標C - 如何從一個NSString
- 30. 如何檢查NSString的第一個值
非常感謝!這個例子很好用! :) –