下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【移动应用开发技术】怎么在ios中实现一个队列
本篇文章为大家展示了怎么在ios中实现一个队列,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。接口部分#import
<Foundation/Foundation.h>
@interface
XMQueue
:
NSObject
///队列追加
-
(void)add:(id)
obj;
///队列取出
-
(id)next;
///返回队列最前端,不删除队列内元素
-
(id)first;
///队列内是否还有元素
-
(BOOL)
isEmpty;
///队列转array
-
(NSArray
*)
arrayCopy;
@end实现方法#import
"XMQueue.h"
@interface
XMQueue()
@property
NSMutableArray
*array;
@property
NSInteger
currentIndex;
@end
@implementation
XMQueue
-
(instancetype)init
{
self
=
[super
init];
if
(self)
{
self.array
=
[[NSMutableArray
alloc]
initWithCapacity:32];
}
return
self;
}
-
(void)add:(id)
obj{
if
(self.currentIndex
>=
self.array.count-1)
{
NSMutableArray
*newArray
=
[[NSMutableArray
alloc]
initWithCapacity:self.array.count*2];
for
(id
obj
in
self.array)
{
[newArray
addObject:obj];
}
self.array
=
newArray;
}
[self.array
addObject:obj];
}
-
(id)next{
if
(![self
isEmpty])
{
id
obj
=
[self.array
objectAtIndex:0];
[self.array
removeObjectAtIndex:0];
return
obj;
}else{
return
@"Empty";
}
}
-
(id)first{
if
(![self
isEmpty])
{
return
self.array[0];
}else{
return
@"Empty";
}
}
-
(BOOL)
isEmpty{
return
self.array.count
==
0;
}
@end测试XMQueue
*queue
=
[[XMQueue
alloc]
init];
for
(int
i
=
0;
i
<
5;
i++)
{
[queue
add:[NSNumber
numberWithInt:i]];
}
for
(NSNumber
*number
in
[queue
arrayCopy])
{
printf("%d,",[number
intValue]);
}
printf("\n");
[queue
add:[queue
next]];
for
(NSNumber
*number
in
[queue
arrayCopy])
{
printf("%d,",[number
intValue]);
}
printf("\n");
[queue
add:[queue
next]];
for
(NSNumber
*number
in
[queue
arrayCopy])
{
printf("%d,",[number
intValue]);
}
printf("\n");
[queue
add:[queue
next]];
for
(NSNumber
*number
in
[queue
arrayCopy])
{
printf("%d,",[number
intValue]);
}
printf("\n");
[queue
add:[queue
next]];
for
(NSNumber
*number
in
[queue
arrayCopy])
{
printf("%d,",[number
intValue]);
}
printf("\n");
[queue
add:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2023年救护装备项目安全评价报告
- 2022届靖江外国语学校中考数学适应性模拟试题含解析
- 2024-2034年中国女性旅游行业市场深度分析及发展战略规划报告
- 2024-2034年中国太阳能光伏设备市场调研与投资趋势研究报告
- 江苏省无锡市新吴区市级名校2023-2024学年中考物理最后一模试卷含解析
- 2024-2034年中国垃圾焚烧烟气处理行业发展趋势预测及投资战略咨询报告
- 2023-2024学年江苏省扬州市仙城联合体重点中学中考联考物理试卷含解析
- 广东省潮州市潮安县2023-2024学年中考物理仿真试卷含解析
- 2024-2034年中国口腔清洁护理用品行业市场全景分析及投资策略研究报告
- 2024-2034年中国化学废料处理行业发展前景预测及投资战略研究报告
- 供货保障方案及措施【8篇】
- 开发区(园区)招商引资投资指南手册【超级完整版】课件
- 参会指南标准模版
- 建筑企业施工成本控制
- 头面部按摩基本手法课件
- Unit6 Oxford English Module 3Animals Pets Period5 WritingWhat animal makes the best pet 英语教学课件
- 2021年春新青岛版(五四制)科学四年级下册全册教案
- 线上开庭申请书范文
- 医疗不良事件考试题及答案
- 全国节能宣传周低碳节能先行教育宣传PPT模板
- 医院DRG分析报告模板
评论
0/150
提交评论