0

这很尴尬。我不想使用 coredata 或文本文件。我需要最短的方法来编写这段代码。

名字(“John”、“Matthew”、“thomas”、“isaac”、“bible”、“Mayan”、“2012”、更多名字)

这段代码耗时极长,而且浪费了太多的内存、下载时间和空间。不推荐它。10,000 行。

 NSString *selectives = Name.text;
 if ([selectives rangeOfString:@"John"].location != NSNotFound) {
    //
 }
 if ([selectives rangeOfString:@"Matthew"].location != NSNotFound) {
     //
 }

第二。此代码不起作用。我不知道我在这里做错了什么。我迷路了。我需要帮助!

    NSString *string = Name.text;
    NSString *NameMe = [NSString stringWithString:@"Jake", "miller", "thomas", "isaac"];

    if([string rangeOfString:NameMe].location !=NSNotFound) 
    {   
       // 
    }

有没有更好的方法来写这个?你怎么写?我不擅长这个。

4

1 回答 1

1

在第一种情况下,您可以使用快速枚举来缩短代码。

NSArray *searchStrings = // Set up your search strings however you want
NSString *selectives = Name.text

for (NSString *searchString in searchStrings) {
    if [selectives rangeOfString:searchString].location != NSNotFound {
        // Your processing here
    }
}

在第二种情况下,这条线是错误的

NSString *NameMe = [NSString stringWithString:@"Jake", "miller", "thomas", "isaac"];

您没有传入格式正确的字符串。@"Jake"是有效的,其余的,因为他们在@"..."节外都没有。

于 2011-09-03T03:34:41.253 回答