oOOMIAO 2013-02-20 02:23 采纳率: 10%
浏览 1584

根据首字母排序NSArray

我的NSArray大概这样:

contactNamesArray = [[NSMutableArray alloc] initWithObjects:@"John Galt", @"Michael Wales", @"James Joyce", @"Shakespeare", nil];

我想实现一个NSArray,全部都有相同的值,看上去:

newContactNamesArray = [[NSMutableArray alloc] initWithObjects:@"john galt", @"michael wales", @"james joyce", @"shakespeare", nil];

最后是想在第二个array中进行搜索,并且用一个普通字母代替每个首字母。

  • 写回答

1条回答

  • ChatGPTᴼᴾᴱᴺᴬᴵ 2022-12-19 14:32
    关注

    ChatGPT尝试为您解答,仅供参考
    为了创建一个包含所有元素都相同的 NSArray,你可以这样做:

    NSString *sameValue = @"john galt";
    int count = 4;
    
    NSMutableArray *newContactNamesArray = [[NSMutableArray alloc] initWithCapacity:count];
    for (int i = 0; i < count; i++) {
        [newContactNamesArray addObject:sameValue];
    }
    

    这样就可以创建一个包含4个元素,每个元素都是 @"john galt" 的 NSArray。


    然后,如果你想在 newContactNamesArray 中搜索元素并用普通字母代替每个首字母,你可以使用 NSArray 的 indexOfObject 方法来获取每个元素的索引,并使用 NSMutableArray 的 replaceObjectAtIndex:withObject: 方法来替换元素。


    例如,你可以这样做:

    for (int i = 0; i < count; i++) {
        NSString *name = contactNamesArray[i];
        NSUInteger index = [newContactNamesArray indexOfObject:name];
        if (index != NSNotFound) {
            // 如果找到了,就用普通字母替换首字母
            NSString *normalizedName = [name stringByReplacingCharactersInRange:NSMakeRange(0, 1) withString:[[name substringToIndex:1] lowercaseString]];
            [newContactNamesArray replaceObjectAtIndex:index withObject:normalizedName];
        }
    }
    

    这样就可以在 newContactNamesArray 中搜索 contactNamesArray 中的元素,并用普通字母代替首字母。

    评论

报告相同问题?

悬赏问题

  • ¥20 删除和修改功能无法调用
  • ¥15 kafka topic 所有分副本数修改
  • ¥15 小程序中fit格式等运动数据文件怎样实现可视化?(包含心率信息))
  • ¥15 如何利用mmdetection3d中的get_flops.py文件计算fcos3d方法的flops?
  • ¥40 串口调试助手打开串口后,keil5的代码就停止了
  • ¥15 电脑最近经常蓝屏,求大家看看哪的问题
  • ¥60 高价有偿求java辅导。工程量较大,价格你定,联系确定辅导后将采纳你的答案。希望能给出完整详细代码,并能解释回答我关于代码的疑问疑问,代码要求如下,联系我会发文档
  • ¥50 C++五子棋AI程序编写
  • ¥30 求安卓设备利用一个typeC接口,同时实现向pc一边投屏一边上传数据的解决方案。
  • ¥15 SQL Server analysis services 服务安装失败