Objective-C中的NSMutableArray:indexOfObject

10
int k = 0;
k = [myArray  indexOfObject:_endNode];

我的数组中仅添加了少数几个对象,其中_endNode不是其中之一。

我期望我的k值为-1。但是,第二行的k值给出了21787887的值。

3个回答

26

实际上是NSNotFound,它被定义为NSIntegerMax

顺便提一下,这在文档中非常明确说明


实际上,我该如何从自动完成框中访问常量。就像我可以通过 [NSMutableArray ...] 访问 NSMutableArray 的方法一样,但常量不会显示出来。 - stone

0

这些信息可能对您有所帮助,

I think there is no DATA in you _endNode so its returning the junk value for the "k"

请检查 _endNode 的值......

0
它实际上被定义为NSIntegerMax,并且称为NSNotFound
NSArray *array = [[NSArray arrayWithObject:_endNode] arrayByAddingObjectsFromArray:Myarray];
int k;
k=[array indexOfObject:_endNode];

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接