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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.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
Objective c 如何在objective c中使用双数组?_Objective C_Arrays_Indexing_Points - Fatal编程技术网

Objective c 如何在objective c中使用双数组?

Objective c 如何在objective c中使用双数组?,objective-c,arrays,indexing,points,Objective C,Arrays,Indexing,Points,我正在尝试使用双数组来生成ccp。因此,我在X轴上循环使用名为grid1x的数组,Y轴上循环使用名为grid1y的数组,如下所示: for (int i = 0; i < [grid1x count]; i++) { p = ccp(x*sw/768,sh-y*sh/1024); grab = [[Grab alloc] initWithPosition:p]; [grabs addObject:grab]; [batch1 addChild:grab z

我正在尝试使用双数组来生成ccp。因此,我在X轴上循环使用名为
grid1x
的数组,Y轴上循环使用名为
grid1y
的数组,如下所示:

for (int i = 0; i < [grid1x count]; i++) 
{
    p = ccp(x*sw/768,sh-y*sh/1024);
    grab = [[Grab alloc] initWithPosition:p];
    [grabs addObject:grab];
    [batch1 addChild:grab z:5];
    [grab release];
}

当我分别提供
x
y
时,效果非常好,但我不知道如何在数组的索引位置使用它们。我知道如何使用
[grid1x objectAtIndex:I]Grab
x
y
等定义),但有一个猜测是你有一个
NSNumber
对象数组-你不能将
double
(或其他基本类型)值放入Objective-C中,其中包括包装为
NSNumber
的实例。尝试类似于
[grid1x[i]doubleValue]
的方法,给定一个
NSNumber
返回它包装为
double
的值。您是否询问如何使用二维数组?正如CRD所指出的,对实际问题非常困惑。如果您想使用x和y为数组编制索引,只需编写一个索引函数,它可以执行如下操作:int getIndex(int x,int y){return y*(width)+x;}(其中width是x的数字)。@CRD请原谅,除了这一部分,我已经处理了所有其他事情。其中p=ccp(…我想用grid1x的当前位置替换x,用y的当前位置替换x。我希望这能让事情变得更清楚一点。@KirkSpaziani我不确定2D数组是否正确,但我想用grid1x位置的值替换x,用grid1y位置的值替换y。2D数组是这样做的更好的例子吗?@Andrew-如果我理解你的意思的话我在上面为
x
y
编写的内容需要
[grid1y[I]doubleValue]
。这些表达式对数组进行索引,然后对结果应用
doubleValue
——假设两个数组中都有
NSNumber
对象。
p = ccp(x*sw/768,sh-y*sh/1024);