当前位置:  开发笔记 > IOS > 正文

如何将NSMutableArray用作队列?

如何解决《如何将NSMutableArray用作队列?》经验,为你挑选了2个好方法。

我有NSMutableArray并使用它像队列等待操作.

数组中的示例:

0:"做点什么"
1:"做别的事"
2:"做点什么2"

当我使用[myarray removeObjectAtIndex:0]数组时没有重新排序,下次当我使用[myarray objectAtIndex:o]结果时nil.

当我删除"做某事"时,如何在第一个索引中添加"Do something else"和在第二个索引中添加"do something 2"?



1> codelogic..:
/* gcc -framework Cocoa myprogram.m -o myprogram */

#import 

int main( int argc, char **argv )
{
  NSMutableArray *array = [ [ NSMutableArray alloc ] 
                           initWithObjects: @"1", @"2", @"3",
                                            nil ]; /* don't forget nil */

  /* "pop" the first object */
  [ array removeObjectAtIndex:0 ];

  /* prints "2" as expected */
  NSLog( @"%@", [ array objectAtIndex: 0 ] );
}



2> Matt Gallagh..:

我通常以相反的顺序处理我的队列但效果是一样的:

// somewhere in your code you insert into the queue (always at index 0)
[myArray insertObject:anObject atIndex:0];

然后,在其他地方,你从队列中读取:

// Process elements in the queue in a FIFO manner
while ([myArray count])
{
    id object = [myArray lastObject];

    // do something with object

    [myArray removeObjectAtIndex:[myArray count] - 1];
}

推荐阅读
重庆制造漫画社
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有