#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
//不可变数组 NSArray
//初始化
//先创建一个空的数组
NSArray *array1 = [[NSArray alloc] init];
NSArray *array2 = [NSArray array];
//创建一个里面只有一个元素的不可变数组
NSArray *array3 = [NSArray arrayWithObject:@"Yong"];
//创建一个里面有多个元素的不可变数组
NSArray *array4 = [NSArray arrayWithObjects:@"zengxinsheng",@"xuyu",@"shenzhengnan",@"chenyaoxing", nil];
//nil只能出现在数组的最后,不能在数组中间存放nil,因为nil是一个NSArray的结束标志.
//新语法
NSArray *array5 = @[@"Yong"];
NSArray *array6 = @[@"zengxinsheng",@"xuyu",@"shenzhengnan",@"chenyaoxing"];
//根据另一个数组产生新的数组
NSArray *array7 = [NSArray arrayWithArray:array6];
//一般不使用,使用类方法创建
// NSArray *array8 = [[NSArray alloc] initWithObjects:@"zengxinsheng",@"xuyu",@"shenzhengnan",@"chenyaoxing", nil];
//从本地文件读取数组
NSArray *array8 = [NSArray arrayWithContentsOfFile:@"字符串"];
//从网络文件读取数组
// NSURL *url = [NSURL URLWithString:@"网址"];
// NSArray *array9 = [NSArray arrayWithContentsOfURL:url];
NSArray *array9 =[NSArray arrayWithContentsOfURL:[NSURL URLWithString:@"网址"]];
//求数组中的个数
NSUInteger count = array6.count;
NSLog(@"%lu",count);
//数组的操作
//访问数组中的元素
//访问array6中的第一个元素
NSString *str = [array6 objectAtIndex:0];
NSLog(@"%@",str);
for (int i = 0; i<array6.count; i++)
{
NSString *str1 = [array6 objectAtIndex:i];
NSLog(@"%@",str1);
}
//新语法访问数组中的元素
NSString *str2 = array6[0];
NSLog(@"%@",str2);
//封装NSNumber
NSNumber *number1 = [NSNumber numberWithInt:5];
//等价于
NSNumber *number2 = @5;
NSNumber *number3 = [NSNumber numberWithBool:YES];
//等价于
NSNumber *number4 = @YES;
//通过数组中的元素找下标
NSUInteger index = [array6 indexOfObject:@"zengxinsheng"];
NSLog(@"%lu",index);
//判断数组中是否存在某个元素
BOOL flag = [array6 containsObject:@"zengxinsheng"];
NSLog(@"%d",flag);
//向不可变数组中增加一个元素,产生新的不可变数组
NSArray *newArrar = [array6 arrayByAddingObject:@"wuzhipeng"];
for (int i = 0; i<newArrar.count; i++)
{
NSString *str3 = [newArrar objectAtIndex:i];
NSLog(@"%@",str3);
}
NSString *string = @"123-456-789";
NSArray *array11 = [string componentsSeparatedByString:@"-"];//分割,去掉"-"
NSLog(@"%@",array11);
NSString *str4 = [newArrar componentsJoinedByString:@"~"];//连接,用"~"连起来
NSLog(@"%@",str4);
NSArray *array12 = @[@"123",@"456",@"789",@"000"];
NSString *str5 = [array12 componentsJoinedByString:@"-"];
NSLog(@"%@",str5);
NSArray *array13 = [str5 componentsSeparatedByString:@"-"];
NSLog(@"%@",array13);
/*
使用NSArray 类注意事项
1.数组越界:当访问NSArray时,索引超出元素个数之后会报出一个异常结果,所以最好检查一下索引结果是否越界,然后在进行调用
2.数组会对加入其中的对象自动把引用计数加一
3.不能在数组中间存放nil,nil只能出现在数组的最后,因为nil是一个NSArray结束的标志
*/
}
return 0;
}
int main(int argc, const char * argv[]) {
@autoreleasepool {
//不可变数组 NSArray
//初始化
//先创建一个空的数组
NSArray *array1 = [[NSArray alloc] init];
NSArray *array2 = [NSArray array];
//创建一个里面只有一个元素的不可变数组
NSArray *array3 = [NSArray arrayWithObject:@"Yong"];
//创建一个里面有多个元素的不可变数组
NSArray *array4 = [NSArray arrayWithObjects:@"zengxinsheng",@"xuyu",@"shenzhengnan",@"chenyaoxing", nil];
//nil只能出现在数组的最后,不能在数组中间存放nil,因为nil是一个NSArray的结束标志.
//新语法
NSArray *array5 = @[@"Yong"];
NSArray *array6 = @[@"zengxinsheng",@"xuyu",@"shenzhengnan",@"chenyaoxing"];
//根据另一个数组产生新的数组
NSArray *array7 = [NSArray arrayWithArray:array6];
//一般不使用,使用类方法创建
// NSArray *array8 = [[NSArray alloc] initWithObjects:@"zengxinsheng",@"xuyu",@"shenzhengnan",@"chenyaoxing", nil];
//从本地文件读取数组
NSArray *array8 = [NSArray arrayWithContentsOfFile:@"字符串"];
//从网络文件读取数组
// NSURL *url = [NSURL URLWithString:@"网址"];
// NSArray *array9 = [NSArray arrayWithContentsOfURL:url];
NSArray *array9 =[NSArray arrayWithContentsOfURL:[NSURL URLWithString:@"网址"]];
//求数组中的个数
NSUInteger count = array6.count;
NSLog(@"%lu",count);
//数组的操作
//访问数组中的元素
//访问array6中的第一个元素
NSString *str = [array6 objectAtIndex:0];
NSLog(@"%@",str);
for (int i = 0; i<array6.count; i++)
{
NSString *str1 = [array6 objectAtIndex:i];
NSLog(@"%@",str1);
}
//新语法访问数组中的元素
NSString *str2 = array6[0];
NSLog(@"%@",str2);
//封装NSNumber
NSNumber *number1 = [NSNumber numberWithInt:5];
//等价于
NSNumber *number2 = @5;
NSNumber *number3 = [NSNumber numberWithBool:YES];
//等价于
NSNumber *number4 = @YES;
//通过数组中的元素找下标
NSUInteger index = [array6 indexOfObject:@"zengxinsheng"];
NSLog(@"%lu",index);
//判断数组中是否存在某个元素
BOOL flag = [array6 containsObject:@"zengxinsheng"];
NSLog(@"%d",flag);
//向不可变数组中增加一个元素,产生新的不可变数组
NSArray *newArrar = [array6 arrayByAddingObject:@"wuzhipeng"];
for (int i = 0; i<newArrar.count; i++)
{
NSString *str3 = [newArrar objectAtIndex:i];
NSLog(@"%@",str3);
}
NSString *string = @"123-456-789";
NSArray *array11 = [string componentsSeparatedByString:@"-"];//分割,去掉"-"
NSLog(@"%@",array11);
NSString *str4 = [newArrar componentsJoinedByString:@"~"];//连接,用"~"连起来
NSLog(@"%@",str4);
NSArray *array12 = @[@"123",@"456",@"789",@"000"];
NSString *str5 = [array12 componentsJoinedByString:@"-"];
NSLog(@"%@",str5);
NSArray *array13 = [str5 componentsSeparatedByString:@"-"];
NSLog(@"%@",array13);
/*
使用NSArray 类注意事项
1.数组越界:当访问NSArray时,索引超出元素个数之后会报出一个异常结果,所以最好检查一下索引结果是否越界,然后在进行调用
2.数组会对加入其中的对象自动把引用计数加一
3.不能在数组中间存放nil,nil只能出现在数组的最后,因为nil是一个NSArray结束的标志
*/
}
return 0;
}