【问题标题】:NSMutableString conversion errorsNSMutableString 转换错误
【发布时间】:2014-06-28 15:48:12
【问题描述】:

我有以下代码,我正用头撞墙试图找出导致错误的原因。

NSMutableString *entry = (@"%@ (%@): %@",translatedHeadword,adlerNumber,meaning);
entry = [entry replaceOccurrencesOfString:@"<br/>" withString:@" " options:NSCaseInsensitiveSearch range:NSMakeRange(0, entry.length)];

第二行给出了两个错误:Implicit conversion of 'NSUInteger' toNSMutableStringis disallowed with ARCIncompatible integer to pointer conversion assigning to NSMutableString from NSUInteger.translatedHeadwordadlerNumbermeaning 都是NSStrings。 adlerNumber 包含代表数字的字符,但它仍然是一个字符串。

我做错了什么?

【问题讨论】:

    标签: ios objective-c nsstring


    【解决方案1】:

    语法(@"%@", foo) 不会产生字符串格式。您需要使用[NSMutableString stringWithFormat:] 进行字符串格式化。

    另外,replaceOccurrencesOfString:... 返回改变的事物的数量并且改变字符串本身。因此,它抱怨分配 entry = ...,因为右侧是 replaceOccurencesOfString:... 返回的 NSUInteger。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-29
      • 2018-07-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多