我是iOS新手.
我有以下警告,我不知道如何解决:
NSString *getNos=[textField.text stringByReplacingCharactersInRange:range withString:string];
NSMutableArray *allNos = [[getNos stringByReplacingOccurrencesOfString:@" " withString:@""]componentsSeparatedByString:@","];
NSString *matchNo = [[allNos lastObject] stringByReplacingOccurrencesOfString:@" " withString:@""];
Run Code Online (Sandbox Code Playgroud)
在第二行和第三行,我有以下警告信息:
Incompatible pointer types assigning to 'NSMutableArray * from NSArray *
and
Incompatible pointer types sending NSString * to parameter of type NSMutableString*
Run Code Online (Sandbox Code Playgroud)
stringByReplacingOccurrencesOfString:返回NSArray不是a NSMutableArray.
要么改变NSMutableArray对NSArray或添加mutableCopy,如果你真的需要一个NSMutableArray:
NSMutableArray *allNos = [[[getNos stringByReplacingOccurrencesOfString:@" " withString:@""]componentsSeparatedByString:@","] mutableCopy];
Run Code Online (Sandbox Code Playgroud)
还有一个拼写错误:缺少"*".
注意:通过使用中间体,代码更容易查看,更容易查明错误:
NSString *getNos = @"a b, c d";
NSString *cleanNos = [getNos stringByReplacingOccurrencesOfString:@" " withString:@""];
NSMutableArray *allNos = [[cleanNos componentsSeparatedByString:@","] mutableCopy];
NSLog(@"allNos: %@", allNos);
Run Code Online (Sandbox Code Playgroud)
NSLog输出:
allNos: (
ab,
cd
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4113 次 |
| 最近记录: |