#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
/*_____ (不可变)数组 NSArray__________________________________________________________*/
/**
* C语言的数组:盛放同一类型变量的有序容器
OC语言的数组:只能存放对象的有序容器
在控制台中,数组以()的形式打印,多个元素间使用','相隔
*/
//1⃣️创建
//1.实例方法
NSArray *array1 = [[NSArray alloc]init];
NSLog(@"%@",array1);
NSArray *array2 = [[NSArray alloc]initWithObjects:@"0",@"1",@"2", nil];
NSLog(@"%@",array2);
//2.类方法
NSArray *array3 = [NSArray array];
NSLog(@"%@",array3);
NSArray *array4 = [NSArray arrayWithObjects:@"0",@"1",@"2", nil];
NSLog(@"%@",array4);
NSArray *array7 = [NSArray arrayWithObject:@"0"];//一个元素的数组
NSLog(@"%@",array7);
//3.用数组构建数组->相当于复制数组
NSArray *array5 = [[NSArray alloc]initWithArray:array2];
NSLog(@"%@",array5);
// NSArray *array6 = array5;//这不是复制 这是创建指针来指向数组 ,array6和array5指向的是同一个数组
NSArray *array6 = [NSArray arrayWithArray:array2];
NSLog(@"%@",array6);
//4.快捷创建
NSArray *array8 = @[@"aaa",@"bbb",@"ccc",@"aaa"];
NSLog(@"%@",array8);
NSObject *objc1 = [[NSObject alloc]init];
NSObject *objc2 = [[NSObject alloc]init];
NSObject *objc3 = [[NSObject alloc]init];
NSArray *array9 = @[objc1,objc2,objc3];
NSLog(@"%@",array9);
//2⃣️属性
//数组中对象的个数
// NSLog(@"%ld",[array8 count]);
NSLog(@"count = %ld",array8.count);
//3⃣️方法
//1.获取数组中的对象
NSLog(@"%@",array8[1]);
NSLog(@"%@",[array8 objectAtIndex:1]);
//第一个对象
NSLog(@"%@",[array8 firstObject]);
//最后一个对象
NSLog(@"%@",[array8 lastObject]);
//2.获取对象的下标
NSLog(@"%ld",[array8 indexOfObject:@"aaa"]);
NSLog(@"%ld",[array8 indexOfObjectIdenticalTo:@"aaa"]);
//限定范围 查找元素下标
NSLog(@"%ld",[array8 indexOfObject:@"aaa" inRange:NSMakeRange(2, 2)]);
//3.判断数组是否包含某个对象
BOOL isTrue = [array8 containsObject:@"aaa"];
NSLog(@"%hhd",isTrue);
//4.数组元素以字符串的形式输入
/**
* 是NSString的分割方法的相反操作
*/
//连接
NSString *string = [array8 componentsJoinedByString:@"~!~"];
NSLog(@"%@",string);
//分割
NSArray *array10 = [string componentsSeparatedByString:@"~!~"];
NSLog(@"%@",array10);
//5.遍历
//传统遍历
for (int i = 0; i<array10.count;i++ ) {
NSLog(@"%@",array10[i]);
}
/**
* 快速遍历
for(数组中对象的类型 *每次获取的对象 in 要遍历的数组)
*/
for (NSString *string in array10) {
NSLog(@"%@",string);
}
}
return 0;
}
2016-01-18 20:31:40.419 04NSArray[4110:624817] (
)
2016-01-18 20:31:40.420 04NSArray[4110:624817] (
0,
1,
2
)
2016-01-18 20:31:40.420 04NSArray[4110:624817] (
)
2016-01-18 20:31:40.420 04NSArray[4110:624817] (
0,
1,
2
)
2016-01-18 20:31:40.420 04NSArray[4110:624817] (
0
)
2016-01-18 20:31:40.420 04NSArray[4110:624817] (
0,
1,
2
)
2016-01-18 20:31:40.420 04NSArray[4110:624817] (
0,
1,
2
)
2016-01-18 20:31:40.421 04NSArray[4110:624817] (
aaa,
bbb,
ccc,
aaa
)
2016-01-18 20:31:40.421 04NSArray[4110:624817] (
"<NSObject: 0x100300160>",
"<NSObject: 0x1003001f0>",
"<NSObject: 0x100300200>"
)
2016-01-18 20:31:40.421 04NSArray[4110:624817] count = 4
2016-01-18 20:31:40.421 04NSArray[4110:624817] bbb
2016-01-18 20:31:40.421 04NSArray[4110:624817] bbb
2016-01-18 20:31:40.421 04NSArray[4110:624817] aaa
2016-01-18 20:31:40.422 04NSArray[4110:624817] aaa
2016-01-18 20:31:40.422 04NSArray[4110:624817] 0
2016-01-18 20:31:40.422 04NSArray[4110:624817] 0
2016-01-18 20:31:40.422 04NSArray[4110:624817] 3
2016-01-18 20:31:40.422 04NSArray[4110:624817] 1
2016-01-18 20:31:40.422 04NSArray[4110:624817] aaa~!~bbb~!~ccc~!~aaa
2016-01-18 20:31:40.423 04NSArray[4110:624817] (
aaa,
bbb,
ccc,
aaa
)
2016-01-18 20:31:40.423 04NSArray[4110:624817] aaa
2016-01-18 20:31:40.423 04NSArray[4110:624817] bbb
2016-01-18 20:31:40.423 04NSArray[4110:624817] ccc
2016-01-18 20:31:40.423 04NSArray[4110:624817] aaa
2016-01-18 20:31:40.423 04NSArray[4110:624817] aaa
2016-01-18 20:31:40.423 04NSArray[4110:624817] bbb
2016-01-18 20:31:40.424 04NSArray[4110:624817] ccc
2016-01-18 20:31:40.424 04NSArray[4110:624817] aaa
Program ended with exit code: 0
Day.01.18 不可变数组
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 给返回的网络数据赋值时发现一个bug,创建对象 rsp[@"imgurl"] 是网络返回数据,为数组格式,于是我在...
- 开发中各种样式的Button,其实这些样式所有的View都可以共用的,可能对于你改变的只有颜色 所有的都是用代码实...