#import <Foundation/Foundation.h>
int main(int argc,constchar * argv[])
{
@autoreleasepool {
// 不可变数组
//数组中不能存放基本数据类型
//创建数组
NSArray *array1 = [NSArray arrayWithObject:@"one"];
NSArray *array2 = [NSArray arrayWithObjects:@"one",@"two",nil];
NSArray *array3 = [NSArray arrayWithArray:array2];
NSLog(@"array1: %@",array1);
NSLog(@"array2: %@",array2);
NSLog(@"array3: %@",array3);
//实例方法
NSArray *array4 = [[NSArray alloc]initWithArray:array1];
NSLog(@"array4:%@",array4);
//获取数组中的元素个数和访问
int count = [array2 count];
NSLog(@"array2 all element :%d",count);
NSString *string1 = [array2 objectAtIndex:1];
NSLog(@"element of array:%@",string1);
//在原数组中追加一个对象返回一个新的数组对象
NSArray *array5 = [array2 arrayByAddingObject:@"end"];
NSLog(@"array5:%@",array5);
//用指定的字符串将数组中的元素连接起来
NSString *string2 = [array5 componentsJoinedByString:@","];
NSLog(@"string2 :%@",string2);
//判断数组中是否存在一个指定的对象
BOOL isContain = [array5 containsObject:@"end"];
NSLog(@"isContain:%d",isContain);
//根据指定的对象返回索引下标,返回数组中最后一个元素
NSInteger index = [array5 indexOfObject:@"end"];
NSLog(@"index :%ld",(long)index);
NSString *lastObject = [array5 lastObject];
NSLog(@"last object :%@",lastObject);
//枚举器——NSEnmerator
//objectEnumerator:向数组请求枚举器
//nextObject:下一个对象
//正向枚举
NSEnumerator *enumerator;
enumerator = [arrayobjectEnumerator];
id obj;//定义一个万能指针
while (obj = [enumeratornextObject]) {
NSLog(@"I found %@",obj);
}
NSLog(@"------------------------------");
//reverseObjectEnumerator:从后向前浏览集合
//反向枚举
enumerator = [arrayreverseObjectEnumerator];
id obj1;//定义一个万能指针
while (obj1 = [enumeratornextObject]) {
NSLog(@"I found %@",obj1);
}
NSLog(@"-----------------------------");
//快速枚举(只有正向枚举)
//对数组进行快速枚举会遍历数组中的每个元素
for(id objin array)
{
NSLog(@"I found %@",obj);
}
}
return0;
}