`
gkuiyj
  • 浏览: 91451 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Objective-C个人学习系列(1) NSString NSMutableString

阅读更多

// 字符初始化

void initStaticString(){

 

    NSString *s1 = @"abc";//[NSString stringWithString:@"abc"];

    NSString *ss1 = [[NSString alloc] initWithString:s1];

    NSString *s2 = [NSString stringWithFormat:@"abcd"];

    NSString *s3 = [NSString stringWithUTF8String:"abcde"];

    NSString *s4 = [NSString stringWithCString:"abc123" encoding:NSUTF8StringEncoding];

    NSString *s5 = [NSString stringWithContentsOfURL:

          [NSURL URLWithString:@"www.baidu.com"]

                encoding:NSUTF8StringEncoding error:nil];

}

// 字符串截取

void mysubString(){

    

    NSString *str=@"abcdefg123456";

    

    //计算字符串长度

    unsigned long n = [str length];

    NSLog(@"%ld",n);

    

    //从第3个位置开始截取,索引从3开始

    NSLog(@"%@",[str substringFromIndex:3]);    //Output:defg123456

    

    //截取到第3个位置,索引到3-1,不包括3

    NSLog(@"%@",[str substringToIndex:3]);      //Output:abc

    

    //截取一段字符串,从2开始的5个字符串

    NSRange range = NSMakeRange(2, 5);   //声明结构体

    NSLog(@"%@",[str substringWithRange:range]);        //Output:cdefg

    //

    NSLog(@"%@",[str substringWithRange:NSMakeRange(2, 5)]);    //Output:cdefg

    

    NSString *str2=@"1,2,3,a,b,c";

    //字符串分割

    NSArray *array=[str2 componentsSeparatedByString:@","];     //Output:(1,2,3,a,b,c)

    NSLog(@"%@",array);

    

    

    NSRange rangeSub = [str rangeOfString:@"defg"];

    //查找子串首字母在父串中的索引位置

    NSLog(@"range.location=%ld",rangeSub.location);     //Output:3

    //查找子串在父串中占的长度,大于0表示找到了,等于0表示没找到

    NSLog(@"range.length=%ld",rangeSub.length);      //Output:4

 

}

 

//可变字符串 NSMutableString

void multalbeString(){

    NSMutableString *mStr = [[NSMutableString alloc] initWithCapacity:0];

    

    [mStr appendString:@"This is MutableString!"];

    NSLog(@"%@",mStr);                 //Output:This is MutableString!

    //在原字符串后面添加格式化字符串

    [mStr appendFormat:@"My age is %d\n",23];

    NSLog(@"%@",mStr);              //Output:This is MutableString!My age is 23

    

    //在原字符串指定位置开始插入字符串

    [mStr insertString:@"AAA"atIndex: 8];

    NSLog(@"%@",mStr);              //Output:This is AAAMutableString!My age is 23

    

    //删除指定范围内的一个子字符串

    [mStr deleteCharactersInRange:NSMakeRange(0, 5)];

    NSLog(@"%@",mStr);              //Output:is AAAMutableString!My age is 23

    

    //替换指定范围内的一个子字符串

    [mStr replaceCharactersInRange:NSMakeRange(3, 3) withString:@"BBB"];

    NSLog(@"%@",mStr);              //Output:is BBBMutableString!My age is 23

}

 

void stringOther(){

    NSMutableString *mStr = [[NSMutableString alloc] initWithCapacity:0];

    [mStr appendString:@"abc abc abc WO WO WO!"];

    

    //转换为大写,返回一个大写的新字符串

    NSString* up = [mStr uppercaseString];

    NSLog(@"up=%@",up);

    NSLog(@"mstr=%@",mStr);

    //转换为小写,返回一个小写的新字符串

    NSString* low = [mStr lowercaseString];

    NSLog(@"low=%@",low);

    //返回一个首字母转换成大写的字符串

    NSString* Abc = [mStr capitalizedString];

    NSLog(@"Abc=%@",Abc);

}

//判断前缀后缀

void stringPreSuf(){

    NSString* strURL = @"http://www.music.com/10/love.mp3";

    BOOL isHasPrefix = [strURL hasPrefix:@"http://"];

    BOOL hasSuffix = [strURL hasSuffix:@".mp3"];

    NSLog(@"%d",isHasPrefix);

    NSLog(@"%d",hasSuffix);

}

//字符串比较

void stringComare(){

    NSString* s1 = @"abc";

    NSString* ss1 = @"abc";         //此处ss1 s1 指向的是同一个地址

    NSString* s2 = [[NSString alloc]initWithFormat:@"abc"];

    

    if ([s1 isEqualToString:s2]) {      //比较字符串的值

        NSLog(@"OK!");

    }

    

    if (s1 == s2) {            //比较字符串的地址,s1==s2 为假 s1==ss1 为真

        NSLog(@"OK!");

    }

    int n = [s1 compare:s2];        //1,0,-1

    NSLog(@"%d",n);

}

 

分享到:
评论

相关推荐

    Objective-C培训教程

    第三章字符串,介绍了Objective-C中处理文本数据的常用类NSString和NSMutableString。NSString用于表示不可变的字符串,而NSMutableString用于表示可变的字符串。 第四章内存管理,讲解了Objective-C中对象的内存...

    Objective-C-HTML-Parser.zip

    1. **字符串处理**:Objective-C提供了NSString和NSMutableString类,它们是处理文本的基础。解析HTML时,会涉及到字符串的分割、查找和替换等操作。 2. **正则表达式**:在Objective-C中,NSRegularExpression类可...

    Objective-C Succinctly.pdf

    - **目标读者**:本书适合初学者以及有一定基础的开发者学习Objective-C语言。 #### 三、安装与配置 - **安装步骤**: - 安装Xcode:Objective-C的主要开发环境为Xcode,它是苹果官方提供的集成开发环境(IDE),...

    Objective-C学习文档

    - Objective-C提供了丰富的字符串处理功能,如`NSString`和`NSMutableString`类,用于文本操作和编辑。 **6. 协议** - **协议**: 定义了类应该遵循的一系列方法签名,用于实现特定的行为,类似于Java中的接口。 ...

    Objective-C培训资料

    Objective-C是一种用于苹果iOS和Mac OS X应用程序开发的面向对象...通过这一系列的系统学习,学员们能够熟练使用Objective-C完成从基础的程序构建到高级功能的开发,同时也能更好地理解与运用面向对象编程的相关概念。

    Objective-c MD5 调试通过的!

    在Objective-C编程中,MD5被用来确保数据的完整性和一致性,尤其是在存储或者传输过程中。以下是对MD5在Objective-C中实现的详细解释。 首先,MD5算法产生一个128位(16字节)的摘要,通常以32位的16进制字符串形式...

    objective-c培训资料

    ### Objective-C基础知识与核心概念 #### 一、Objective-C简介 Objective-C是一种面向...通过学习Objective-C的基础语法和核心概念,开发者可以更好地理解和掌握这种语言的特点和优势,从而编写出高效稳定的程序。

    Objective-C培训资料(傻瓜教程)

    此外,Objective-C还引入了BOOL类型,用于表示逻辑真和假,其中`YES`和`NO`分别对应C语言中的1和0。 #### 四、字符串 Objective-C中处理字符串的主要类是`NSString`。`NSString`是一个不可变类,即一旦创建就不能...

    objective-c教程

    Objective-C教程旨在为初学者提供一个全面的学习路径,让他们掌握这门语言的基础,并能够理解面向对象编程的核心概念。 在Objective-C基础教程中,首先会介绍如何构建一个OC客户端程序。创建程序的第一步是在Xcode...

    北风网内部版Objective-C培训资料

    ### 北风网内部版Objective-C培训资料知识点详解 ...以上是对北风网内部版Objective-C培训资料的主要知识点的详细解释,通过这些内容的学习,可以对Objective-C有一个全面的认识,并为进一步深入学习打下坚实的基础。

    Lecture 3: Objective-C

    描述:本讲座深入探讨了Objective-C编程语言的关键概念,包括方法(类和实例)、实例变量、属性、动态绑定、内省、nil与BOOL,以及Foundation框架中的核心类如NSObject、NSString、NSMutableString、NSNumber、...

    Objective-C中字符串操作总结

    Objective-C是一种用于开发iOS应用的主要编程语言,其字符串操作主要依赖于NSString类和NSMutableString类。NSString用于创建不可变字符串对象,而NSMutableString则用于创建可变字符串对象。以下是Objective-C中...

    Objective-C基础教程.docx

    - **定义**:Objective-C是一种结合了C语言特性和Smalltalk风格消息传递机制的通用、面向对象的编程语言。 - **应用领域**:主要用于苹果的操作系统macOS和iOS及其API(Cocoa和Cocoa Touch)。 #### 二、Objective-...

    Objective-C 培训教程

    - **NSString**:Objective-C中用于表示字符串的基本类,提供了一系列方法来处理字符串操作,如拼接、分割等。 - **NSMutableString**:一个可变的字符串类,允许修改字符串内容。 #### 第四章:内存管理 - **ARC ...

    NSString_NSMutableString

    Objective-C里核心的处理字符串的类就是NSString和NSMutableString这两个类,这两个类完成了Objective-C中字符串大部分功能的处理。这两个类的最主要的区别是NSString创建赋值后不能动态修改长度和内容,除非给重新...

    Objective-c对象组装XML

    [map setObject:@"c" forKey:@"content"]; 或者 NSMutableArray *list = [[NSMutableArray alloc]init]; NSMutableDictionary *map1 = [[NSMutableDictionary alloc]init]; [map1 setObject:@"a1" forKey:@...

Global site tag (gtag.js) - Google Analytics