Foundation 库
1.如何创建
2.如何使用
3.有哪些属性和方法
可变字符串(NSMutableString)
不可变字符串(NSString)创建之后就不能删改
1、创建字符串
1.静态 alloc new copy mutablecopy
NSString *str = @"hello world";
2.alloc 空字符串对象
NSString *str2 = [[[NSString alloc]init]autorelease];
3.alloc 有初始值
NSString *str3 = [[[NSString alloc]initWIthString:str]autorelease];
不要自己控制内存 工厂方法,便利器方法
NSString *str3_1 = [NSString stringWithString:str];
NSLog (@"%@",str31);
4,字符串按照一定的格式拼接 int agr = 20 height = 170
NSString *str4 = [[[NSString alloc]initWithFormat:@"age= %d height = %d",age,height]autorelease]
2.length获取长度
NSUInteger length = str.length;
3.获取字符串
a.substringFromIndex:
b.substringToIndex:
c.substringWithRange:
typedef stuct _NSRange{
NSUInteger location;
NSUInteger length;
}NSRange;
NSRange range = NSMakeRange(4,8);
4,字符串比较
a.isEqualToString:
b.compare:
typedef enum{
NSOrderedAscending = -1,
NSOrderedSame,
NSOrderedDescending
}NSComparisonResult;
5.字符串的查找
a.hasPrefix
b,hasSuffix
c.rangeOfString:
6.字符串转化为相应的数据类型
a.intValue
b.boolValue
NSString *priceStr = @"33.4";
float price =[priceStr floatValue];
7.数字转换为字符串
int temp= 20;
NSString *tempStr = [NSString stringWithFormat:@"this costs $%d",temp];
可变字符串(NSMutableString)
@interface NSMutableString:NSString{
}
1.创建可变字符串
NSMutableString *mstr2 = [NSMutableSring stringWithCapacity:0];
NSMutableString *mstr = [NSMutableString alloc]initWIthCapacity];
2.追加字符串
[mStr appendString:@"四大名著"];
[mStr apperndFormat:@"%d大名著",num];
3,在某个位置插入一个字符串
[mStr inserString:@"《"atIndex:0];
[mStr inserString:@"》"atIndex:mStr.length];
4,字符串的替换
NSRange rge = [mStr rangeOfString:@"四大名著"];
[mStr replaceCharactersInRange:rge withString:@"三个火枪手"];
5.删除一个字符串
NSRange yge = [mStr rangeOfString :@"压抑"];
[mStr deleteCharactersInRange:yge];
6,重新设置字符串内容
[mStr setString:@"西游记"];
二、NSSArray
不可变数组 NSArray
C语言的数组里面只能存放同一种基本数据类型
OC的数组可以存放多种类型的数据(必须是对象类型,不能存放简单的数据类型)
注意:我们在实际编程过程中,尽量在一个数组里面存放同一种类型
1.创建一个数组
NSArray *array = @[@"yql",xw,zs,hz];
NSArray *array2 = @[array,@"zp",@"yql"];
//创建一个空的数组
NSArray *array3 = [NSArray array];
NSArray *array4 = [[NSArray alloc]init];
NSArray *array5 = [NSArray arrayWithArray:array];
NSArray *array6 = [[NSArray alloc]initWithArray:array];
NSArray *array7 = [NSArray arrayWithObject:xw];
创建的时候初始化一部分数据
数据结尾为nil不能向数组里面添加一个值为nil的对象
NSArray array8 = [NSArray arrayWithObjects:xw,zs,nil];
NSArray *array8_1 = [[NSArray alloc]initWithObjects :xw,zs,nil];
NSLog(@"...%@",array8);
2.获取数组元素的个数count
NSLog (@"the count of array8 is %d",[array8 count ];
3.获取索引位置对应的元素(对象)
访问数组里面的某个元素 使用索引值访问index
Person *temp = [array8 objectAtIndex:0];
获取数组里面的最后一个元素
Person *temp2 = [array8 lastObject];
Person *temp3 = [array8 firstObjecr];
4,遍历数组
for (int i = 0;i<array8.count;i++){
NSLog(@"%@",[array8 objectAtIndex:i]);
使用快循环
for (Person *p in array8){
NSLog(@"%@",p);
}
5,判断数组里面是否包含某一个对象
if([array8 containObject:@"yangqinglong"]{
NSLog(@"yes");
}else{
NSLog(@"no");
}
6.获取某个对象在数组里面的索引值
NSInteger index = [array8 indexOfObject:@"yangqinglong"];
NSMutableArray 可变数组
1.创建
NSMutableArray *mArray = [NSMutableArray arrayWithCapacity:3];
2.增加addObject
[mArray addObject :xw];
[mArray addObject:zs];
3.插入元素 insertObjectAtIndex:
[mArray insetObject:array5 atIndex:0];
4.删除元素
[mArray removeObject:xw];
[mArray removeObjectAtIndex:0];
删除所有
[mArray removeAllIndex:0];
5,交换元素的位置
[mArray exchangeObjectAtIndex:0 withObjectAtIndex:1]