Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
uitableview分组的多个数组中的objective-c拆分数组_Objective C_Arrays_Uitableview_Split - Fatal编程技术网

uitableview分组的多个数组中的objective-c拆分数组

uitableview分组的多个数组中的objective-c拆分数组,objective-c,arrays,uitableview,split,Objective C,Arrays,Uitableview,Split,嗨,我有一个需要排序的对象数组(名称上的字母) 很好。但现在我需要将其拆分,以便在分组的uitableview中使用 self.sortedKeys =[[NSArray alloc] initWithObjects:@"{search}",@"A",@"B",@"C",@"D",@"E",@"F",@"G",@"H",@"I",@"J",@"K",@"L",@"M",@"N",@"O",@"P",@"Q",@"R",@"S",@"T",@"U",@"

嗨,我有一个需要排序的对象数组(名称上的字母)

很好。但现在我需要将其拆分,以便在分组的uitableview中使用

    self.sortedKeys =[[NSArray alloc]
                  initWithObjects:@"{search}",@"A",@"B",@"C",@"D",@"E",@"F",@"G",@"H",@"I",@"J",@"K",@"L",@"M",@"N",@"O",@"P",@"Q",@"R",@"S",@"T",@"U",@"V",@"W",@"X",@"Y",@"Z",nil];


NSMutableArray *arrTemp0 = [[NSMutableArray alloc]
                     initWithObjects:@"000",nil];    
NSMutableArray *arrTemp1 = [[NSMutableArray alloc]
                     initWithObjects:@"Andrew",@"Aubrey",@"Aalice", @"Andrew",@"Aubrey",@"Alice",@"Andrew",@"Aubrey",@"Alice",nil];
NSMutableArray *arrTemp2 = [[NSMutableArray alloc]
                     initWithObjects:@"Bob",@"Bill",@"Bianca",@"Bob",@"Bill",@"Bianca",nil];
NSMutableArray *arrTemp3 = [[NSMutableArray alloc]
                     initWithObjects:@"Candice",@"Clint",@"Chris",@"Candice",@"Clint",@"Chris",nil];
NSMutableArray *arrTemp4 = [[NSMutableArray alloc]
                     initWithObjects:@"Dandice",@"Dlint",@"Dhris",nil];
NSDictionary *temp =[[NSDictionary alloc]
                     initWithObjectsAndKeys:arrTemp0, @"{search}", arrTemp1,@"A",arrTemp2,
                     @"B",arrTemp3,@"C",arrTemp4,@"D",nil];


self.tableContents =temp;
所以所有第一个字母“a”的艺术家都在一个数组中。。。在一个数组中使用“b”,以此类推

我需要做一些字符串比较还是有更好的方法

创建一个空的NSMutableDictionary

循环遍历所有字符串。对于每个字符串:

  • 如果字符串为空,则忽略此字符串
  • 获取一个NSString,该字符串包含转换为大写的字符串的第一个字符。这将是你的字典钥匙
  • 查看字典中是否已包含此键
  • 如果不是,则创建一个新的NSMutableArray,其中只包含字符串,并将其作为值添加到此新键
  • 如果是,请将此字符串添加到现有数组的末尾
循环结束。

如何:

创建一个空的NSMutableDictionary

循环遍历所有字符串。对于每个字符串:

  • 如果字符串为空,则忽略此字符串
  • 获取一个NSString,该字符串包含转换为大写的字符串的第一个字符。这将是你的字典钥匙
  • 查看字典中是否已包含此键
  • 如果不是,则创建一个新的NSMutableArray,其中只包含字符串,并将其作为值添加到此新键
  • 如果是,请将此字符串添加到现有数组的末尾

循环结束。

谢谢。我想可能会有一种更小的方法,比如:“通过SELECTR从数组返回数组”,类似于排序描述符Thank。我想可能会有一种更小的方法,比如:“按选择器从数组返回数组”,类似于排序描述符
    self.sortedKeys =[[NSArray alloc]
                  initWithObjects:@"{search}",@"A",@"B",@"C",@"D",@"E",@"F",@"G",@"H",@"I",@"J",@"K",@"L",@"M",@"N",@"O",@"P",@"Q",@"R",@"S",@"T",@"U",@"V",@"W",@"X",@"Y",@"Z",nil];


NSMutableArray *arrTemp0 = [[NSMutableArray alloc]
                     initWithObjects:@"000",nil];    
NSMutableArray *arrTemp1 = [[NSMutableArray alloc]
                     initWithObjects:@"Andrew",@"Aubrey",@"Aalice", @"Andrew",@"Aubrey",@"Alice",@"Andrew",@"Aubrey",@"Alice",nil];
NSMutableArray *arrTemp2 = [[NSMutableArray alloc]
                     initWithObjects:@"Bob",@"Bill",@"Bianca",@"Bob",@"Bill",@"Bianca",nil];
NSMutableArray *arrTemp3 = [[NSMutableArray alloc]
                     initWithObjects:@"Candice",@"Clint",@"Chris",@"Candice",@"Clint",@"Chris",nil];
NSMutableArray *arrTemp4 = [[NSMutableArray alloc]
                     initWithObjects:@"Dandice",@"Dlint",@"Dhris",nil];
NSDictionary *temp =[[NSDictionary alloc]
                     initWithObjectsAndKeys:arrTemp0, @"{search}", arrTemp1,@"A",arrTemp2,
                     @"B",arrTemp3,@"C",arrTemp4,@"D",nil];


self.tableContents =temp;