喜 我有一个像这样的数组:
array1 [00] = 01,KSE array1 [01] = 04,NCEL array1 [02] = 06,LSE
我有第二个数组(codeArray
),它有大约50个元素。所有元素都是'01'或'04'或'06'。
现在我必须比较两个阵列和array1必须针对代码返回一个名称(KSE或NCEL或LSE),那么我该怎么做呢? 帮助PLZ
提前完成
array1
是我从服务器& codeArray
也来自服务器,这就是为什么两个阵列都是动态的&可以有任何值,但codeArray
中的所有值都将存在于array1
答案 0 :(得分:1)
您使用的是C数组还是NSArray?我会假设NSArray,好吗?对不起,我很难理解你的问题。
-(NSArray*)decodeArray:(NSArray*)codeArray keyArray:(NSArray*)array1
{
NSMutableDictionary * dict = [ NSMutableDictionary dictionary ] ;
for( NSString * string in array1 )
{
NSArray * split = [ string componentsSeparatedByString:@"," ] ;
[ dict setValue:[ split objectAtIndex:1 ] forKey:[ split objectAtIndex:0 ] ] ;
}
NSMutableArray * result = [ NSMutableArray array ] ;
for( id item in codeArray )
{
[ result addObject:[ dict valueForKey:item ] ] ;
}
return result ;
}
答案 1 :(得分:0)
array1[0] = "01,KSE";
array1[1] = "04,NCEL";
array1[2] = "06,LSE";
if( [codeArray length] == 3 ) {
if( ([codeArray[0] isEqualToString:@"01"] || [codeArray[0] isEqualToString:@"04"] ||
[codeArray[0] isEqualToString:@"06"]) && ([codeArray[1] isEqualToString:@"01"] ||
[codeArray[1] isEqualToString:@"04"] || [codeArray[1] isEqualToString:@"06"]) &&
([codeArray[2] isEqualToString:@"01"] || [codeArray[2] isEqualToString:@"04"] ||
[codeArray[2] isEqualToString:@"06"]) )
return @"KSE KSE & LSE";
这就是我可以回答你的问题......