Foundation框架(3)数组对象及集合对象

  • 数组对象NSArray

    十年专注成都网站制作,成都定制网站,个人网站制作服务,为大家分享网站制作知识、方案,网站设计流程、步骤,成功服务上千家企业。为您提供网站建设,网站制作,网页设计及定制高端网站建设服务,专注于成都定制网站,高端网页制作,对成都建筑动画等多个方面,拥有多年的网站运维经验。

数组对象的创建:

+ (instancetype)array     //空数组
+ (instancetype)arrayWithObject:(ObjectType)anObject     //一个对象元素的数组
+ (instancetype)arrayWithObjects:(ObjectType)firstObj, … //多个对象元素的数组(最后一个参数为nil)

字面值:

NSArray * arr = @[@"hello", @10, @YES];  //常量方式

          注意:只能存储OC对象,数值需要封装成对象,nil需要封装成NSNull

基本操作:

@property(readonly) NSUInteger count
- (BOOL)containsObject:(ObjectType)anObject
@property(nonatomic, readonly) ObjectType firstObject
@property(nonatomic, readonly) ObjectType lastObject
- (ObjectType)objectAtIndex:(NSUInteger)index
- (NSUInteger)indexOfObject:(ObjectType)anObject

文件/URL操作相关:

+ (NSArray *)arrayWithContentsOfFile:(NSString *)aPath
+ (NSArray *)arrayWithContentsOfURL:(NSURL *)aURL
- (BOOL)writeToFile:(NSString *)path atomically:(BOOL)flag
- (BOOL)writeToURL:(NSURL *)aURL atomically:(BOOL)flag

数组的遍历方式一:C语言方式

for ( int i=0; i

数组的遍历方式二:

for ( id obj in arr4) {
    NSUInteger i = [arr4 indexOfObject:obj];   
    NSLog(@"index:%lu %@", i, obj);
}

注意:这种遍历方式应用在可变数组时,不要在 遍历过程中改变数组

     

  • 可变数组对象

NSMutableArray用于描述可变数组对象,是NSArray的子类

添加:

- (void)addObject:(ObjectType)anObject
- (void)addObjectsFromArray:(NSArray *)otherArray
- (void)insertObject:(ObjectType)anObject atIndex:(NSUInteger)index

删除:     

- (void)removeAllObjects
- (void)removeLastObject
- (void)removeObjectAtIndex:(NSUInteger)index

  • 集合对象

NSSet用于描述集合对象,子类为NSMutableSet

集合与数组的区别:1)集合不支持下标取成员 2)集合中不能有重复对象

集合对象的创建:

+ (instancetype)set
+ (instancetype)setWithArray:(NSArray *)array
+ (instancetype)setWithObject:(ObjectType)object
+ (instancetype)setWithObjects:(ObjectType)firstObj, firstObj, ...

集合对象的常见操作:

@property(readonly) NSUInteger count
@property(readonly, copy) NSArray < ObjectType > *allObjects
- (ObjectType)anyObject
- (BOOL)containsObject:(ObjectType)anObject

可变集合对象的操作:     

- (void)addObject:(ObjectType)object
- (void)removeObject:(ObjectType)object
- (void)removeAllObjects
- (void)addObjectsFromArray:(NSArray *)array

其他集合对象:

    可变集合对象NSMutableSet

    索引集合NSIndexSet

    字符集合NSCharacterSet

    ...


本文名称:Foundation框架(3)数组对象及集合对象
网站地址:http://bzwzjz.com/article/phoiss.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 高端网站设计 成都网站制作 成都网站设计 成都网站设计 营销网站建设 手机网站制作 温江网站设计 成都网站设计制作公司 成都网站设计 成都企业网站制作 成都网站建设 网站建设方案 网站建设方案 品牌网站建设 成都网站建设 LED网站设计方案 专业网站设计 四川成都网站制作 成都网站制作 成都网站制作 网站制作 成都网站制作