Object_C 回顾 0.1.1 数据类型
来源:互联网 发布:股票k线数据如何获得? 编辑:程序博客网 时间:2024/04/30 04:18
NSString //字符串 NSInteger//长整形(64位下) CGFloat//实型
NSStringAndNSMutableString 字符串对象
NSArrayAndNSmutableArray 数组
NSNumber 数值对象类 (区别于NSInteger 基本数据类型)
NSValue 结构体
NSDictionaryAndNSMutableDictionary 字典型数据
NSSetAndNSMutableSet 集合
1)NSStringAndNSMutableString
创建字符串对象
initWithString 相当于直接赋值常量字符串对象
NSString *str1 = @"张三";
//stringWithString :相当于直接赋值
NSString*str2 =@"李四";//
NSString *str2 =[NSString stringWithString:@""]
initWithFormat :通过传入格式化字符串进行字符串对象的创建
NSString *str3 = [[NSString alloc]initWithFormat:@"常量字符串 %@ %d %f",@"iPhone",6,6089.00];
NSLog(@"%@",str3);
//stringWithFormat :其实内部封装了 alloc 以及 initWithFormat :操作
NSString *str4 = [NSStringstringWithFormat:@"通过便利构造器创建字符串"];
NSLog(@"%@",str4);
//initWithUTF8String :将C语言的字符串转化成 OC 字符串对象
NSString *str5 = [[NSStringalloc]initWithUTF8String:"我是一个C语言字符串,不加@"];
NSLog(@"%@",str5);
//
NSString *str6 = [NSStringstringWithUTF8String:"哔了狗了,通过便利构造器的方法将C语言转化为OC字符串"];
NSLog(@"%@",str6);
NSString *str =[NSStringstringWithFormat:@"http://www.baidu.com"];
NSLog(@"%@",str);
//1.替换将所有符合条件的字符串进行替换
NSString *replaceStr =[strstringByReplacingOccurrencesOfString:@"baidu"withString:@"lanxiang"];
NSLog(@"%@",replaceStr);
//2.拼接
NSString *appendStr = [strstringByAppendingFormat:@".cn"];
NSLog(@"%@",appendStr);
//3.长度
NSUInteger length = [strlength];
NSLog(@"length = %lu",length);
//4 大小写转换
NSString *upperStr = [struppercaseString];
NSLog(@"%@",upperStr);
NSString *lowerStr = [upperStrlowercaseString];
NSLog(@"%@",lowerStr);
//首字母大写
NSString *capital = [strcapitalizedString];
NSLog(@"%@",capital);
//5.判断开头结尾一般用来判断字符串的格式
BOOL isPerFix = [strhasPrefix:@"ftp"];
NSLog(@"%d",isPerFix);
BOOL isSufFix = [strhasSuffix:@".com"];
NSLog(@"%d",isSufFix);
6.字符串截取
substringFromIndex : 从给定位置开始截取大字符串结束(包括当前位置)
substringToIndex : 从开头截取到指定位置 (不包括当前位置)
substringWithRange : 通过给定范围进行字符串的截取
系统给我们提供了快速创建结构体的方式 NSMake + 结构体名 (例如 NSRange NSMakeRange(1,10);)
NSString *subStr1 = [str substringFromIndex:3];
NSLog(@"%@",subStr1);
NSString *subStr2 = [str substringToIndex:3];
NSLog(@"%@",subStr2);
NSString *subStr3 = [str substringWithRange:NSMakeRange(11,7)];
NSLog(@"%@",subStr3);
判断相等
NSString *str2 = [NSString stringWithFormat:@"aa"];
NSString *str3 = [NSStringstringWithFormat:@"aa"];
BOOL isEqual =[str2isEqualToString:str3];
NSLog(@"%d",isEqual);
//比较
NSInteger result = [str2compare:str3];
NSLog(@"result = %ld",result);
1.1NSMutableString可变字符串 是NSString的子类增添了NSString 的可变的功能
NSMutableString *xiaoMing = [[NSMutableString alloc ]initWithFormat:@"xiaoMing love wifi"];
//增
//拼接
[xiaoMing appendFormat:@" xiaoHong"];
NSLog(@"%@",xiaoMing);
//插入
[xiaoMing insertString:@"and "atIndex:17];
NSLog(@"%@",xiaoMing);
//可变子类不要轻易调用父类不可变的方法
//删
//删除
[xiaoMing deleteCharactersInRange:NSMakeRange(12,8)];
NSLog(@"%@",xiaoMing);
//替换
[xiaoMing replaceCharactersInRange:NSMakeRange(12,10)withString:@"wifi"];
NSLog(@"%@",xiaoMing);
//改
[xiaoMing setString:@"xiaoMing and xiaoHong live happily forever"];
NSLog(@"%@",xiaoMing);
//判断字符串@"aBcD_EfGK"中是否有EfGk,如果有将EfGK转换成WXYZ,并让字符串的大写字母转成小写,输出修改完成的字符串
NSString *str =@"aBcD_EfGk";
//rangeOfString:查找所给字符串在原字符串中的范围如果length > 0 说明存在,如果length == 0则不存在
NSRange range = [strrangeOfString:@"EfGk"];
NSLog(@"%ld %ld",range.location,range.length);
if (range.length >0) {
NSString *newStr = [strstringByReplacingOccurrencesOfString:@"EfGk"withString:@"WXYZ"];
//转化为小写
NSString *lowerStr = [newStrlowercaseString];
NSLog(@"%@",lowerStr);
}
2)NSArrayAndNSmutableArray
2.1NSArray
NSString *Nokia =@"Nokia";
NSString *apple =@"Apple";
NSString *mi =@"MI";
//initWithObjects:在初始化时一次性存入多个对象 对象和对象之间","隔开以"nil"结尾 ,nil之后的对象不再存储
NSArray *array = [[NSArrayalloc]initWithObjects:Nokia,apple,mi, Nokia,nil];
NSLog(@"%@",array);
//数组个数
NSInteger count = [arraycount];
NSLog(@"count = %ld",count);
//访问数组元素
NSString *what = [arrayobjectAtIndex:3];
NSLog(@"%@ %@",what,array[2]);
//通过对象找到索引值
//indexOfObject: 只是 找到第一个满足条件的对象的下标
NSInteger index = [arrayindexOfObject:Nokia];
NSLog(@"%ld",index);
//遍历数组
for (int i =0; i < array.count; i++)
{
NSLog(@"%@",[arrayobjectAtIndex:i]);
}
NSArray *sortedArray = [arraysortedArrayUsingSelector:@selector(compare:)];
NSLog(@"%@",sortedArray);
2.1NSMutableArray NSString *xiaoYi = [NSStringstringWithFormat:@"xiaoYi