oc方面的字符串和数值方面的总结

1、字符转为字符串

//OC的NSString 类提供了根据c语言字符串创建NSString对象的初始化方法和便利构造器
    char *cString = "fendoudexiaolaoshu";
    NSString *string = [[NSString alloc] initWithCString:cString
                                                 encoding:NSUTF8StringEncoding];
//C语言字符串在转成OC字符串对象时,需要进行转码,转码格式选择NSUTF8StringEncoding枚举值。
    NSString *string = [NSString stringWithCString:cString
                                           encoding:NSUTF8StringEncoding];

2.根据文档内容创建oc字符串对象

/**
     文件路径
     */
    NSString *string = [[NSString alloc]initWithContentsOfFile:@"/Users/xalo/Desktop/622848.txt" encoding:NSUTF8StringEncoding error:nil];

3.获取指定下标的字符

//characterAtIndex:方法可以获取方法调用的字符串对象指定下标的字符,下标从0到length-1
        char character = [string8 characterAtIndex:i];

4.比较两个字符串是否相同

BOOL result = [string1 isEqualToString:string2 ];
    NSLog(@"%@",result ? @"YES" : @"NO");

5.比较两个字符串对象的大小顺序

//比较两个字符串对象的大小顺序,-1表示调用方法的字符串比参数字符串小,为升序,0 表示一致,1表示调用方法的字符串比较参数字符串大,为降序。
    NSComparisonResult compareResult = [string9 compare:string10];

6.获取从指定下标开始(包含指定下标)到字符串结尾的子字符串

NSString *subString1 = [string8 substringFromIndex:2];

7.获取从原始字符串起始下标开始到指定下标(不包含指定下标)的子字符串

NSString *subString2 = [string8 substringToIndex:3];

8.结构体NSRange包含两个长整形成员,分别为起始下标和长度。如果使用range截取字符串,则表示从指定下标开始截取指定长度的子字符串并返回

NSRange range = NSMakeRange(1, 2);
    NSString *subString3 = [string8 substringWithRange:range];

9.字符串拼接的两种方法

//字符串拼接的两种方法
    NSString *appendString1 = [string10 stringByAppendingString:@" hahahah"];
    NSLog(@"appendString1==%@",appendString1);

//拼接指定格式的字符串
    NSString *appendString2 = [string10 stringByAppendingFormat:@" %d %c %d",3,'+',5];
    NSLog(@"appendString2===%@",appendString2);

    NSString *appendString3 = [@"3 + 5 " stringByAppendingFormat:@"%@",string10];
    NSLog(@"%@",appendString3);

10.通过指定的参数字符串替换对应范围的字符们

NSString *replacedString = [string8 stringByReplacingCharactersInRange:NSMakeRange(1, 3) withString:@"haha"];
    NSLog(@"%@",replacedString);

    NSString *textString = @"abcdefghijklmn";
    NSRange replaceRange = [textString rangeOfString:@"efg"];//获取指定字符串在原字符串的范围
    NSString *resultStr = [textString stringByReplacingCharactersInRange:replaceRange withString:@"abc"];
    NSLog(@"%@",resultStr);

11.判断字符串是否包含指定字符串

BOOL result1 = [string8 containsString:@"am"];
    NSLog(@"%@",result1 ? @"YES" : @"NO");

12.返回大小写字符串

//返回大写字符串
    NSLog(@"%@",string8.uppercaseString);//大写字符串
//返回小写字符串
    NSLog(@"%@",string8.lowercaseString);//小写字符串
//返回首字母大写字符串
    NSLog(@"%@",string8.capitalizedString);//首字母大写

13.判断指定字符串是否有前缀字符串或后缀字符串

//判断指定字符串是否有前缀字符串
    BOOL result2 = [string8 hasPrefix:@"http"];
    NSLog(@"%@",result2 ? @"YES" : @"NO");
//判断指定字符串是否有后缀字符串
    BOOL result3 = [string8 hasSuffix:@".com"];
    NSLog(@"%@",result3 ? @"YES" : @"NO");

14.可变字符串

//根据不可变字符串对象创建同内容的可变字符串对象
    NSMutableString *mutableStr1 = [[NSMutableString alloc] initWithString:@"lanou3g"];
    NSLog(@"%@",mutableStr1);

    NSMutableString *mutableStr2 = [NSMutableString string];
    NSLog(@"mutableStr2:%@",mutableStr2);
    //对于可变字符串,可以在创建对象后,调用设置字符串的方法。
    [mutableStr2 setString:@"lanou3g"];
    NSLog(@"%@",mutableStr2);

//可变字符串的两种拼接方法,除了可以使用继承自NSString类的拼接方法返回结果字符串,可变字符串提供直接拼接修改字符串对象的方法。
    [mutableStr2 appendString:@" haha"];
    NSLog(@"%@",mutableStr2);
    [mutableStr2 appendFormat:@" %d %c %d",3,'+',5];
    NSLog(@"%@",mutableStr2);

//为可变字符串在指定下标插入字符串的方法。
    [mutableStr2 insertString:@"beijing" atIndex:7];
    NSLog(@"%@",mutableStr2);

//通过继承来的方法获取指定字符串在可变字符串的范围
    NSRange deleteRange = [mutableStr2 rangeOfString:@"beijing"];
    //为可变字符串删除指定范围的字符串
    [mutableStr2 deleteCharactersInRange:deleteRange];
    NSLog(@"%@",mutableStr2);

//可变字符串提供的用于替换指定范围的字符为给定的字符串的方法。
    [mutableStr2 replaceCharactersInRange:NSMakeRange(1, 4) withString:@"hahah"];
    NSLog(@"%@",mutableStr2);

15.基本类型的数据创建NSNumber类型的对象

    //int
    NSNumber *intNumber = [NSNumber numberWithInt:20];
    //float
    NSNumber *floatNumber = [NSNumber numberWithFloat:3.14];
    //long
    NSNumber *longNumber = [NSNumber numberWithLong:45698215];
    //char
    NSNumber *charNumber = [NSNumber numberWithChar:'a'];
    //shout
    NSNumber *shortNumber = [NSNumber numberWithShort:154];
    //double
    NSNumber *doubleNumber = [NSNumber numberWithDouble:456545481215.6523];
    //bool
    NSNumber *boolNumber = [NSNumber numberWithBool:YES];
    //integer
    NSNumber *integerNumber = [NSNumber numberWithInteger:456];
    //longlong
    NSNumber *longLongNumber = [NSNumber numberWithLongLong:464544454584454645];

16.将已有的NSNumber类型的对象转化成基本类型的数据,使用NSNumber类提供的相关属性

    NSLog(@"%d",intNumber.intValue);
    NSLog(@"%f",floatNumber.floatValue);
    NSLog(@"%f",doubleNumber.doubleValue);
    NSLog(@"%c",charNumber.charValue);
    NSLog(@"%ld",longNumber.longValue);
    NSLog(@"%lld",longLongNumber.longLongValue);
    NSLog(@"%d",shortNumber.shortValue);

17.比较两个基本类型的大小

    NSComparisonResult compareResult1  = [intNumber compare:floatNumber];
    NSLog(@"%ld",compareResult1);

    NSComparisonResult compareResult2 = [charNumber compare:doubleNumber];
    NSLog(@"%ld",compareResult2);

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,711评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,932评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,770评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,799评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,697评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,069评论 1 276
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,535评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,200评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,353评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,290评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,331评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,020评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,610评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,694评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,927评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,330评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,904评论 2 341

推荐阅读更多精彩内容