我有以下代码,我正在撞墙,试图找出导致错误的原因。
NSMutableString *entry = (@"%@ (%@): %@",translatedHeadword,adlerNumber,meaning);
entry = [entry replaceOccurrencesOfString:@"<br/>" withString:@" " options:NSCaseInsensitiveSearch range:NSMakeRange(0, entry.length)];
第二行有两个错误:Implicit conversion of 'NSUInteger' to
NSMutableString is disallowed with ARC
和Incompatible integer to pointer conversion assigning to NSMutableString from NSUInteger.
但translatedHeadword
,adlerNumber
和meaning
都是{ {1}}秒。 NSString
包含代表数字的字符,但它仍然是一个字符串。
我做错了什么?
答案 0 :(得分:0)
语法(@"%@", foo)
不会产生字符串格式。您需要使用[NSMutableString stringWithFormat:]
来进行字符串格式化。
此外,replaceOccurrencesOfString:...
返回已更改内容的数量,更改字符串本身。因此,它正在抱怨作业entry = ...
,因为右侧是replaceOccurencesOfString:...
返回的NSUInteger。