<pre name="code" class="objc">#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
//不可变数组 NSArray
//初始化
//创建一个空数组
NSArray *array1 = [[NSArray alloc] init];
NSArray *array2 = [NSArray alloc];
//创建一个里面有多个元素的不可变数组
NSArray *array3 = [NSArray arrayWithObject:@"Rick"];
NSLog(@"array3 = %@",array3);
//创建一个里面有多个元素的不可变数组
NSArray *array4 = [NSArray arrayWithObjects:@"zhengyongxai",@"zhengyongya",@"liutao",@"kuncai",nil];
//新语法
NSArray *array5 = @[@"Rick"];
NSArray *array6 = @[@"zhengyongxia",@"zhengyongya",@"liutao",@"kuncai"];
NSLog(@"array6 = %@",array6);
//根据另一个数组产生新的数组
NSArray *array7 = [NSArray arrayWithArray:array6];
//从本地文件读取数组
NSArray *array8 = [NSArray arrayWithContentsOfFile:@"/Users/ibokan2/Desktop/hello.html"];
NSLog(@"%@",array8);
//从网络读取数组
NSURL *url = [NSURL URLWithString:@"www.baidu.com"];
NSArray *array9 = [NSArray arrayWithContentsOfURL:url];
//求数组中的个数
NSUInteger count = array6.count;
NSLog(@"%count = ld",count); // ount = ld
for (int i = 0; i < count; i++) {
NSString *str = [array6 objectAtIndex:i]; //objectAtIndex对象索引
NSLog(@"str[%d] = %@",i,str);
}
//新语法访问数组中的元素
NSString *str2 = array6[0];
NSLog(@"str2 = %@",str2); //str2 = zhengyongxia
NSNumber *number1 = [NSNumber numberWithInt:5]; //NSNumber number数量
//等价于
NSNumber *number2 = @5;
NSLog(@"umber1 = %@",number1); //umber1 = 5
//通过数组中的元素找下标
NSUInteger index = [array6 indexOfObject:@"zhengyongxia"]; //indexOfObject 索引的对象
NSLog(@"index = %ld", index); //index = 0
//如何判断数组中是否存在某个元素
bool flge = [array6 containsObject:@"zhengyongxia"]; //containsObject 包含数组
NSLog(@"flge = %d", flge); //flge = 1
//向不可变数组中增加一个元素。产生新的不可变数组
NSArray *newArray1 = [array6 arrayByAddingObject:@"lihuitang"]; //arrayByAddingObject 通过添加对象数组
NSLog(@"newArray1 = %@",newArray1);
for (id obj in newArray1) {
NSLog(@"obj = %@", obj);
}
for (int i = 0; i < [newArray1 count]; i++) {
NSLog(@"newArray1 = %@",newArray1);
}
NSString *string = @"123-456-789";
NSArray *array11 = [string componentsSeparatedByString:@"-"]; //拆 -
NSLog(@"array11 = %@",array11);
NSArray *arr1 = [string stringByReplacingOccurrencesOfString:@"-" withString:@"~"]; //替换
NSLog(@"%@",arr1);
NSString *string11 = [newArray1 componentsJoinedByString:@"-"]; //添加 -
NSLog(@"string11 = %@",string11);
NSArray *array12 = @[@"123",@"456",@"789"];
NSString *array13 = [array12 componentsJoinedByString:@"--"];
NSLog(@"array13 = %@",array13);
NSArray *array14 = [array13 componentsSeparatedByString:@"--"]; //拆
NSLog(@"array14 = %@",array14);
// array14 = (
// 123,
// 456,
// 789
// )
NSString *string12 = [array14 componentsJoinedByString:@""];
NSLog(@"string12 = %@",string12); //string12 = 123456789
/*
使用NSArray 类注意事项
1、数组越界,当访问NSArray 时,索引超出元素个数之后报出一个异常结果。所以最好检查一下索引结果是否越界,然后在进行调用
2、数组会对加入其中的对象自动把引用计数加一
3、不能在数组中间存放nil,nil只能出现在数组的最后,因为nil是一个NSArray 结束的标志
*/
}
return 0;
}
Objective-C 数组一 "不可变数组"
最新推荐文章于 2020-09-26 17:36:51 发布