OC中的数组定义和方法使用

一、NSString:不可变字符串

字符串的创建:
1、创建一个空字符串:
①、NSString *str =[ [NSString alloc] init]
②、NSString *str = [NSString string];
2、以字符串创建新的字符串(相当于字面量):
①、NSString *str = [[NSSting alloc]initWithString: newStr];
②、NSString *str = [NSStringstringWithString: newStr];
③、NSString *str = @" ";
3、按格式化创建新的字符串:
NSString *str = [[NSString alloc]initWithFormat: @"a = %d",5];
NSString *str = [NSStringstringWithFormat: @"%@",@"newStr"];
4、将一个数字转换成字符串
NSInteger  a = 100;
NSString *str = [[NSString alloc]initWithFormat: @"%ld",a];


方法:
1、获取字符串长度:string.length
2、获取指定的字符:newString =  [stringcharacterAtIndex: number];
3、从指定位置开始到结束获取字符串:newString = [stringsubstringFromIndex: number];
4、从0开始到指定位置结束获取字符串:newString = [stringsubstringToIndex: number];
5、从指定范围内获取字符串:newString = [stringsubstringWithRange: range];
6、字符串的比较:NSInteger result =  [string1compare: string2];
7、判断字符串是否相等:BOOl flag = [string1isEqualToString: string2];
8、判断是否有前缀:BOOl flag = [ stringhasPrefix: @" "];
9、判断是否有后缀:BOOl flag = [ stringhasSuffix:@" "];
10、将一个字符串拼接到老字符串后面:newString = [string1stringByAppendingString: string2];
11、按格式化产生一个字符串并拼接到老字符串后面:newString = [stringstringByAppendingFormat: @"%d",5];
12、将所有字符大写:upString = [stringuppercaseString];
13、将所有字符小写:lowString = [stringlowercaseString];
14、将单词首字母大写,其余小写:newString = [stringcapitalizedString];
15、用字符串替换指定范围内的出现过字符:
      newString = [stringstringByReplacingCharactersInRange: rangewithString: otherString];
16、用指定字符串替换指定所有出现的字符串:
      newString = [string stringByReplacingOccurrencesOfString: string withString: otherString];

二、NSMutableString:可变字符串
可变字符串的创建
1、创建一个新空字符串且预留N个字符的空间:
NSMutableString *mString = [[NSMutableString alloc] initWithCapacity: number];
2、利用字符串来创建一个可变的字符串
NSMutableString *mString = [[NSMutableString alloc] initWithString: otherMstring];
3、利用字面量创建一个可变的字符串
NSMutableString *mString = [@"str" mutableCopy];

方法(因为可变字符串是不可以变字符串的子类,所以父类的方法都可以使用):
1、拼接:[string appendString:  newString];
2、格式化拼接:[string appendFormat: @" "];
3、在指定下标处插入字符串:[string insertString: newString atIndex: number];
4、删除范围内的字符:[string deleteCharactersInRange: range];
5、替换范围内出现过的字符串:
[string replaceOccurrencesOfString: replaceString withString: newString option: 查找的方式 range: range];
6、替换出现过的字符:
[string stringByReplacingOccurrencesOfString: 被替换的字符 withString: 替换的字符;
7、将字符串转换成数字:
NSString *string = @"200";
NSInteger number =[string integerValue];

三、NSNumber:数值类

1、将整型\浮点型\字符型装换成数值对象:
NSNumber *NSNumberObject = [[NSNumber alloc] initWithInt\Float\Char];
2、将数值对象转换成基本数据:
数据类型  变量 = NSNumberObject .interger\char\floatValue
3、字面量@(基本数据类型):NSNumber *z = @(‘A’)
4、将BOOL变量装换成数值:NSNumber *f = @(f)

四、NSValue 的使用

1、将点结构体转换成对象,然后将对象转换成结构体
NSPoint point = {1,2};
NSValue *value = [NSValue valueWithPoint:point];
NSPoint pp = value .pointValue;

2、将自定义结构体装换成对象,然后将对象装换成自定义结构体
Student stu = {“xiaohong”,’f’,19};
NSValue *stuValue = [[NSValue alloc] initWithBytes: &stu objCType: @encode(Student)];
Student stu1;
[stuValue getValue: &stu1]




你可能感兴趣的:(OC中的数组定义和方法使用)