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 中的元素,并用普通字母代替首字母。

    评论

报告相同问题?

悬赏问题

  • ¥15 matlab(相关搜索:紧聚焦)
  • ¥15 基于51单片机的厨房煤气泄露检测报警系统设计
  • ¥15 路易威登官网 里边的参数逆向
  • ¥15 Arduino无法同时连接多个hx711模块,如何解决?
  • ¥50 需求一个up主付费课程
  • ¥20 模型在y分布之外的数据上预测能力不好如何解决
  • ¥15 processing提取音乐节奏
  • ¥15 gg加速器加速游戏时,提示不是x86架构
  • ¥15 python按要求编写程序
  • ¥15 Python输入字符串转化为列表排序具体见图,严格按照输入