#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
// 不可变数组 - NSArray
// ---常用方法---
// 数组的初始化
NSArray *firstArray = [NSArray arrayWithObject:@"one"];
// 多个元素初始化时,注意以nil作为数组的结束
NSArray *secondArray = [NSArray arrayWithObjects:@"one",@"two", nil];
NSArray *thirdArray = [NSArray arrayWithArray:secondArray];
/*___________________ NSArray ____________________*/
// 数组的创建
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); // element 元素
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:@"end1"];
NSLog(@"isContain : %d",isContain);
// 根据指定的对象返回索引下标,返回数组中最后一个元素
NSInteger index = [array5 indexOfObject:@"end"];
NSLog(@"index : %d",index);
NSString *lastObject = [array5 lastObject];
NSLog(@"last Object : %@",lastObject);
/
// 可变数组 - NSMutableArray,它继承自NSArray
// ---常用方法---
// 创建一个空的数组
NSMutableArray *numtableArray1 = [NSMutableArray array];
NSMutableArray *numtableArray2 = [NSMutableArray arrayWithCapacity:5];
NSMutableArray *numtableArray3 = [NSMutableArray arrayWithObjects:@"one",@"two", nil];
/*
// 初始化,设定元素个数为5,但可以更改的
NSMutableArray *muntableArray = [NSMutableArray arrayWithCapacity:5];
// 向数组中添加一个元素
[mutableArray addObject:@"aaa"];
// 向数组中指定下标插入元素
[mutableArray insertObject:@"ccc" atIndex:0];
// 移除最后一个元素
[mutableArray removeLastObject];
// 移除指定下标的元素
[mutableArray removeObjectAtIndex:0];
// 向数组中添加数组
[mutableArray addObjectsFromArray:array];
// 替换指定的下标元素
[mutableArray replaceObjectAtIndex:0 withObject:@"replace"];
// 移除所有对象
[mutableArray removeAllObejects];
*/
// 遍历数组
NSArray *array = [NSArray arrayWithObjects:@"One",@"Two",@"Three",nil];
for (int i = 0; i < [array count]; i++) {
NSString *string = [array objectAtIndex:index];
NSLog(@"string : %@",string);
}// 遍历的性能低
for (NSString *string in array) {
NSLog(@"string : %@",string);
}// 遍历的性能高
for (id string in array) {
NSLog(@"found %@",string);
}// 当不确定数组的元素类型时,可以选择id
return 0;
}