数组和集合——NSArray/NSSet
来源:互联网 发布:淘宝优惠券转换口令 编辑:程序博客网 时间:2024/05/03 12:45
数组
NSArray 初始化方法
NSArray *array = [[NSArray alloc] init];NSArray *array1 = @[@"x",@"as",@"da"];//对象方法NSArray *array2 = [[NSArray alloc] initWithObjects:@"a", @"b", @"c", nil];//类方法NSArray *array5 = [NSArray arrayWithObjects:@"d", @"j", @"151", nil];NSArray *array3 = [[NSArray alloc] initWithArray:array1];
获取数组中的对象
NSLog(@"%@", [array1 objectAtIndex:2]);NSLog(@"%@", array1[2]);
获取数组的长度(元素的个数)
NSLog(@"%ld", array1.count);
查询某个对象的下标
//查找对象下标NSLog(@"%ld", [array1 indexOfObject:@"as"]);
NSMutableArray
NSMutableArray *mutableArray = [NSMutableArray array];
添加元素
NSString *name = @"dasd";[mutableArray addObject:name];//从一个数组添加(添加内容为数组全部内容)[mutableArray addObjectsFromArray:array2];
插入元素
[mutableArray insertObject:@"15" atIndex:3];
删除元素
//删除某一个元素[mutableArray removeObject:@"15"];NSLog(@"%@", mutableArray);//删除所有元素//[mutableArray removeAllObjects];//删除数组最后的元素[mutableArray removeLastObject];
替换元素
[mutableArray replaceObjectAtIndex:1 withObject:@"ada"];//交换指定位置的两个元素[mutableArray exchangeObjectAtIndex:0 withObjectAtIndex:1];NSLog(@"%@", mutableArray);
数组排序
NSLog(@"%@", [array1 sortedArrayUsingSelector:@selector(caseInsensitiveCompare:)]);
示例:图书管理
NSMutableArray *bookArray = [NSMutableArray array]; Book *a = [[Book alloc] initWithBookName:@"a" withBookMoney:15]; Book *b = [[Book alloc] initWithBookName:@"b" withBookMoney:35]; Book *c = [[Book alloc] initWithBookName:@"c" withBookMoney:50]; //添加书籍 [bookArray addObject:a]; [bookArray addObject:b]; [bookArray addObject:c]; //删除书籍 [bookArray removeObject:b];// 展示所有书籍的清单 for (Book *book in bookArray) { [book printBook]; } //可以从数组根据书名查找书籍,并修改书籍的价格 NSString *string = @"c"; for (Book *book in bookArray) { if ([book.bookName isEqualToString:string]) { book.bookMoney = 100; [book printBook]; } }
数值对象
初始化
NSNumber *number = [NSNumber numberWithInteger:10];NSNumber *number2 = [NSNumber numberWithInt:12];
转换
NSInteger index = number.integerValue; int asss = number2.intValue;
集合
NSSet(集合是无序的,所以不能按存储顺序取元素)
创建集合对象
NSSet *set = [[NSSet alloc] initWithObjects:@"a", @"c", @"2", nil];//根据数组初始化NSSet *set1 = [NSSet setWithArray:array1];
获取元素个数
NSLog(@"%ld", [set count]);//获取集合中的某一个元素NSLog(@"%@", [set1 anyObject]);
判断集合中是否包含某一个对象
if ([set containsObject:@"c"]) { NSLog(@"存在");}
NSMutableSet
NSMutableSet *mutableSet = [NSMutableSet setWithObjects:@"a", @"s", @"d", nil];
添加元素
[mutableSet addObject:@"f"];
删除元素
[mutableSet removeObject:@"a"]; NSLog(@"%@", mutableSet);
0 0
- 数组和集合——NSArray/NSSet
- 【深入浅出Objective-C】8.2数组(NSArray)和集合(NSSet)
- 黑马程序员——类集合之NSArray,NSSet,NSDictionary
- IOS 中数组、集合、字典的使用(NSArray, NSSet, NSDictionary)
- iOS OC (五) 字典NSDictionary 数组 NSArray 集合 NSSet
- iOS中的遍历(数组NSArray,字典NSDictionary,集合NSSet)
- iOS中的遍历(数组NSArray,字典NSDictionary,集合NSSet)
- NSSet 和 NSArray 区别
- NSSet和NSArray转化
- NSArray和NSSet对比
- NSArray和NSSet
- 【Objective-C】集合类(NSArray, NSSet, NSOrderedSet 和 NSDictionary)
- iOS7: 漫谈基础集合类(NSArray, NSSet, NSOrderedSet 和 NSDictionary)
- iOS7: 漫谈基础集合类(NSArray, NSSet, NSOrderedSet 和 NSDictionary)
- 黑马程序员——Foundation框架——集合类(NSSet、NSArray等)(一)
- 黑马程序员——Foundation框架——集合类(NSSet、NSArray等)(二)
- NSSet和NSArray的区别
- NSSet和NSArray的区别
- 使用NSMutableURLRequest遇到的坑
- IOS中关于闭包的使用
- 【MySQL解惑】索引背后的数据结构及算法原理
- C++中const int *、int *const 以及int const*区别
- Python双下划线(__)引发的学习-Get Started
- 数组和集合——NSArray/NSSet
- SQL Case when 的使用方法
- MyEclipse中启动Tomcat,报OutOfMemoryError: PermGen space的解决方法
- 《软件架构设计》学习笔记--5--6大步骤1:需求分析
- Android_Module用法_和_如何制作自己的Library开源库
- C# 调用外部dll
- linux常用命令集
- 关于flash跨域问题
- 打开android studio 时遇到卡顿,任务管理器里有N多个aapt.exe进程情况的解决