Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何替换目标c中NSMutablestring的内容_Ios_Objective C_Nsstring_Nsmutablestring - Fatal编程技术网

Ios 如何替换目标c中NSMutablestring的内容

Ios 如何替换目标c中NSMutablestring的内容,ios,objective-c,nsstring,nsmutablestring,Ios,Objective C,Nsstring,Nsmutablestring,我是c目标的新手。我想替换我正在使用的可变字符串的内容 NSMutableString *myMutableStringObj = [myMutableStringObj stringByReplacingOccurrencesOfString:@" & " withString:@"And"]; 但它给了我警告 从NSString* 对此有什么建议吗。我正在使用MutableString 它告诉您该函数返回NSString*。如果你想清除那个警告。就这样做吧: NSMutableSt

我是c目标的新手。我想替换我正在使用的可变字符串的内容

NSMutableString *myMutableStringObj = [myMutableStringObj stringByReplacingOccurrencesOfString:@" & " withString:@"And"];
但它给了我警告 从
NSString*


对此有什么建议吗。我正在使用
MutableString

它告诉您该函数返回
NSString*
。如果你想清除那个警告。就这样做吧:

NSMutableString *myMutableStringObj = [[myMutableStringObj stringByReplacingOccurrencesOfString:@" & " withString:@"And"] mutableCopy];

请参阅中的方法符号

此方法返回NSString对象

因此,您需要将结果转换为mutalbe字符串或在NSString中捕获结果。

请使用此代码

 NSMutableString * str1 = [NSMutableString stringWithString:@"Hello Testing"];
    str1 = [[str1  stringByReplacingOccurrencesOfString:@"T" withString:@"B"] mutableCopy];
    NSLog(@"%@",str1);

阅读NSString和NSMutableString的文档。这不仅适用于你,也适用于目前为止回答这个问题的任何人。这个问题的答案绝对令人沮丧

有一些方法可以用于NSString,但也可以用于NSMutableString,这些方法基于以前的字符串创建新的不可变字符串。通常,以“stringBy…”开头的方法将创建一个新字符串

在NSMutableString接口中有一些方法可以修改现有NSMutableString的内容。比如“替换字符串”


阅读文档并选择适合您的内容。以“stringBy”开头的方法不会修改可变字符串,而是创建一个新的不可变字符串。要修改字符串,请使用NSMutableString接口中的方法。幸运的是,当您使用错误的方法时,编译器会告诉您

这给了我同样的警告。你完全误解了可变字符串的工作原理。使用“replacementsofstring”。您正在创建两个对象,而不需要这样做。buz stringByReplacingOccurrencesOfString返回NSString而不是NSMutableString。或者-也许-使用可变字符串的方法如何?@gnasher您可以按照apple的文档进行操作。这是非常清楚的,不费吹灰之力就可以理解。你完全误解了可变字符串的工作原理。使用“replacementsofstring”。您正在创建三个对象,而您只需要创建一个。@gnasher729您能解释一下我在哪里使用三个对象吗?
 NSMutableString * str1 = [NSMutableString stringWithString:@"Hello Testing"];
    str1 = [[str1  stringByReplacingOccurrencesOfString:@"T" withString:@"B"] mutableCopy];
    NSLog(@"%@",str1);