Object_C 回顾 0.1.1 数据类型

 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 = [NSString stringWithFormat:@"通过便利构造器创建字符串"];

        NSLog(@"%@",str4);

        //initWithUTF8String : C语言的字符串 转化成 OC 字符串对象

        NSString *str5 = [[NSString alloc]initWithUTF8String:"我是一个C语言字符串,不加@"];

        NSLog(@"%@",str5);

        //

        NSString *str6 = [NSString stringWithUTF8String:"哔了狗了,通过便利构造器的方法将C语言转化为OC字符串"];

        NSLog(@"%@",str6);

        NSString *str =[NSString stringWithFormat:@"http://www.baidu.com"];

        NSLog(@"%@",str);

        

        //1.替换 将所有符合条件的字符串进行替换

        NSString *replaceStr =[str stringByReplacingOccurrencesOfString:@"baidu" withString:@"lanxiang"];

        NSLog(@"%@",replaceStr);

        

        //2.拼接

        NSString *appendStr = [str stringByAppendingFormat:@".cn"];

        NSLog(@"%@",appendStr);

        

        //3.长度

        NSUInteger length = [str length];

        NSLog(@"length = %lu",length);

        

        //4 大小写转换

        NSString *upperStr = [str uppercaseString];

        NSLog(@"%@",upperStr);

        NSString *lowerStr = [upperStr lowercaseString];

        NSLog(@"%@",lowerStr);

        //首字母大写

        NSString *capital = [str capitalizedString];

        NSLog(@"%@",capital);

        //5.判断开头结尾 一般用来判断字符串的格式

        BOOL isPerFix = [str hasPrefix:@"ftp"];

        NSLog(@"%d",isPerFix);

        BOOL isSufFix = [str hasSuffix:@".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 = [NSString stringWithFormat:@"aa"];

        

        BOOL isEqual =[str2 isEqualToString:str3];

        NSLog(@"%d",isEqual);

    

        //比较

        NSInteger result = [str2 compare: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 = [str rangeOfString:@"EfGk"];

        NSLog(@"%ld %ld",range.location,range.length);

        

        if (range.length > 0) {

            NSString *newStr  = [str stringByReplacingOccurrencesOfString:@"EfGk" withString:@"WXYZ"];

            //转化为小写

            NSString *lowerStr = [newStr lowercaseString];

            NSLog(@"%@",lowerStr);

        }

        

2)NSArrayAndNSmutableArray

2.1NSArray 

        NSString *Nokia = @"Nokia";

        NSString *apple = @"Apple";

        NSString *mi = @"MI";

        //initWithObjects:在初始化时 一次性存入多个对象 对象和对象之间","隔开 "nil"结尾 ,nil 之后的对象不再存储

        NSArray *array = [[NSArray alloc]initWithObjects:Nokia,apple,mi, Nokia,nil];

        NSLog(@"%@",array);

        //数组个数

        NSInteger count = [array count];

        NSLog(@"count = %ld",count);

        //访问数组元素

        

        NSString *what = [array objectAtIndex:3];

        NSLog(@"%@ %@",what,array[2]);

        

        //通过对象 找到索引值

        //indexOfObject: 只是 找到第一个满足条件的对象的下标

        NSInteger index = [array indexOfObject:Nokia];

        NSLog(@"%ld",index);

        

        //遍历数组

        

        for (int i = 0; i < array.count; i++)

        {

            NSLog(@"%@",[array objectAtIndex:i]);

        }

        

        NSArray *sortedArray = [array sortedArrayUsingSelector:@selector(compare:)];

        

        NSLog(@"%@",sortedArray);

2.1NSMutableArray

        NSString *xiaoYi = [NSString stringWithFormat:@"xiaoYi

发布了36 篇原创文章 · 获赞 6 · 访问量 7万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章