我的方法旨在从输入字符串中提取游戏级别的信息。输入指定2D阵列播放区域的大小,以及2D阵列中哪些点出现了哪些项目。
例如,“4,3。a,b,c。d,e,f。g,h,i。j,k,l”将包括4列和3行,看起来像这样(不带连字符):
a --- d --- g --- j
b --- e --- h --- k
c --- f --- i --- l
该代码可以正常工作,直到出现错误的最后一行:
“在']'标记之前的预期':'”。
我已经尝试解决了一段时间,所以如果我错过了这件事,我会很尴尬!任何帮助将非常感激。
-(void)readLevelDataFromString:(NSString*)inputString {
//remove spaces from the input
NSString *tempString = [inputString stringByReplacingOccurrencesOfString:@" " withString:@""];
//make mutable
NSMutableString *levelDataString = [NSMutableString stringWithString:tempString];
//trim first 4 characters, which we don't need
[levelDataString deleteCharactersInRange:NSMakeRange(0, 4)];
//separate whole string into an array of strings, each of which contains information on the particular column
NSArray *levelDataStringColumns = [levelDataString componentsSeparatedByString:@"."];
NSAssert([levelDataStringColumns count] == numColumns, @"In the level data string, the number of columns specified did not match the number of X tiles present.");
NSString *columnString = [[NSString alloc] initWithString:[[levelDataStringColumns] objectAtIndex:0]];
}
最佳答案
您还有一组[]
。你要:
NSString *columnString = [[NSString alloc] initWithString:[levelDataStringColumns objectAtIndex:0]];
关于objective-c - NSString “Expected ' :' before ' ]' token”错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7355856/