【问题标题】:how to find the Array index value in objective c [duplicate]如何在目标c中找到数组索引值[重复]
【发布时间】:2013-01-21 10:21:53
【问题描述】:

可能重复:
Getting Index of an Object from NSArray?

我有一个数组和一个字符串。数组名称是“Array1”,字符串名称是“String”,现在我在“Array1”中有以下值。

"array1 = [[NSMutableArray alloc]initWithObjects:@"A",@"b",@"c",@"d",@"e", nil];"

我的字符串值为 "A"

现在我想比较这些字符串和数组。我想显示数组索引值。

我该怎么做。请有人帮助我。提前致谢。

【问题讨论】:

    标签: iphone ios xcode


    【解决方案1】:
    int i;
    for (i = 0; i < [myArray count]; i++) {
      id myArrayElement = [myArray objectAtIndex:i];
    ...do something useful with myArrayElement
     }`
    

    您可以迭代 NSMutableArray 并找到特定对象使用的位置

     int indexValue = [myArray indexOfObject:yourString];
    

    【讨论】:

    • 如果我得到 Numbers 意味着我能做什么? (e.x): @"1",@"2",和array1一样,字符串值是@"1"。
    • 感谢您的回复。那么如果我得到 NUMbers 意味着我能做什么?例如“array1 = [[NSMutableArray alloc]initWithObjects:@"1",@"2",@"3",@"4",@"5", nil];"另一个数组值@“1”。我怎么能比较这个。请帮我解决这个问题。
    • 我认为不太清楚,因为您可以比较 NSString 并且可以将其转换为 int。
    • 这在我的代码中运行良好
    【解决方案2】:

    我不确定这是否是您正在寻找的,但也许:

    int index = [array1 indexOfObject:String];
    

    【讨论】:

    • 感谢您的回复。那么如果我得到 NUMbers 意味着我能做什么?例如“array1 = [[NSMutableArray alloc]initWithObjects:@"1",@"2",@"3",@"4",@"5", nil];"另一个数组值@“1”。我怎么能比较这个。请帮我解决这个问题。
    • 对不起,我不明白你的意思。你想比较什么?字符串、数组还是索引?
    • 感谢您的回复。我已经解决了我的问题。感谢您的回复。
    【解决方案3】:

    试试这个,

    if([array1 containsObject: yourString])
    {
       int index = [array1 indexOfObject:yourString];
    }
    

    【讨论】:

    • 两个查询?出于性能原因,我建议在结果上使用 NSNotFound!
    • @JonathanCichon 但他想将字符串与数组元素进行比较..
    • 但是您的containsObject 完全没有必要,因为indexOfObject 可以满足您的所有需求。
    【解决方案4】:

    使用

    NSString *String=@"A";
    NSInteger index = [array1 indexOfObject:String]; 
    

    注意:不要使用大写的变量名String,它应该是string

    【讨论】:

      【解决方案5】:

      检查

      int index = [yourArray indexOfObject:yourObject];
      

      对于NSString 对象和一些其他类型的对象是正确的。

      当你自己实现了一个类并且想要获取数组中对象的索引时,你必须实现该方法

      - (BOOL)isEqual:(id)anObject
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-06-25
        • 1970-01-01
        • 2017-03-08
        • 1970-01-01
        相关资源
        最近更新 更多