[英]Incompatible pointer types assigning to NSMutableString from NSArray
我是iOS的新手。
我有以下警告,我不知道該如何解決:
NSString *getNos=[textField.text stringByReplacingCharactersInRange:range withString:string];
NSMutableArray *allNos = [[getNos stringByReplacingOccurrencesOfString:@" " withString:@""]componentsSeparatedByString:@","];
NSString *matchNo = [[allNos lastObject] stringByReplacingOccurrencesOfString:@" " withString:@""];
在第二行和第三行,我有以下警告消息:
Incompatible pointer types assigning to 'NSMutableArray * from NSArray *
and
Incompatible pointer types sending NSString * to parameter of type NSMutableString*
stringByReplacingOccurrencesOfString:
返回一個NSArray
而不是NSMutableArray
。
如果確實需要NSMutableArray
請將NSMutableArray
更改為NSArray
或添加mutableCopy
:
NSMutableArray *allNos = [[[getNos stringByReplacingOccurrencesOfString:@" " withString:@""]componentsSeparatedByString:@","] mutableCopy];
也有一個錯字:缺少“ *”。
注意:通過使用中間件,代碼更易於查看,更易於查明錯誤:
NSString *getNos = @"a b, c d";
NSString *cleanNos = [getNos stringByReplacingOccurrencesOfString:@" " withString:@""];
NSMutableArray *allNos = [[cleanNos componentsSeparatedByString:@","] mutableCopy];
NSLog(@"allNos: %@", allNos);
NSLog輸出:
allNos: (
ab,
cd
)
您正在嘗試將NSArray分配給NSMutableArray,但同時也缺少指針*,請替換為
NSMutableArray allNos = ...
有了這個
NSMutableArray *allNos = [NSMutableArray arrayWithArray://YOUR stuff here]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.