亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在ios中實現一個隊列

發布時間:2021-04-16 17:44:37 來源:億速云 閱讀:175 作者:Leah 欄目:移動開發

本篇文章為大家展示了怎么在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:[queue next]];
 for (NSNumber *number in [queue arrayCopy]) {
 printf("%d,",[number intValue]);
 
 }

結果

怎么在ios中實現一個隊列

上述內容就是怎么在ios中實現一個隊列,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

ios
AI

徐州市| 老河口市| 岳阳县| 方山县| 根河市| 平舆县| 瓮安县| 兴仁县| 裕民县| 平顶山市| 安图县| 平原县| 芒康县| 呼玛县| 六枝特区| 杭州市| 峨眉山市| 岳阳县| 南川市| 穆棱市| 广汉市| 吉木乃县| 固阳县| 县级市| 贡嘎县| 余干县| 平利县| 黑山县| 五原县| 易门县| 冷水江市| 五莲县| 惠安县| 泾川县| 德格县| 蕉岭县| 海盐县| 绿春县| 嘉鱼县| 芮城县| 自贡市|