1.字符串的创建

   1:   NSString *s1 = @"jack";
   2:      
   3:      //NSString *s2 = [[NSString alloc] initWithString:@"jack"];
   4:      
   5:      NSString *s3 = [[NSString alloc] initWithFormat:@"age is %d", 10];
   6:      
   7:      // C字符串 --> OC字符串
   8:      NSString *s4 = [[NSString alloc] initWithUTF8String:"jack"];
   9:      // OC字符串 --> C字符串
  10:      const char *cs = [s4 UTF8String];
  11:      
  12:      // NSUTF8StringEncoding 用到中文就可以用这种编码
  13:      NSString *s5 = [[NSString alloc] initWithContentsOfFile:@"/Users/apple/Desktop/1.txt" encoding:NSUTF8StringEncoding error:nil];
  14:      

   1:  /*
   2:       一般都会有一个类方法跟对象方法配对
   3:       [NSURL URLWithString:<#(NSString *)#>];
   4:       [NSString stringWithFormat:@""];
   5:       [NSString stringWithContentsOfFile:<#(NSString *)#> encoding:<#(NSStringEncoding)#> error:<#(NSError *__autoreleasing *)#>];
   6:  
   7:       */

2.常用方法

1)检查前缀

   1:   NSString *str = @"qq=12344&pwd=adadfs";
   2:      [str hasPrefix:@"qq="];
   3:      
   4:      [str hasSuffix:@"fs"];

2)大小写转换

   1:      NSString *str = [@"adbDAd" lowercaseString];
   2:      NSString *upStr = [str uppercaseString];
   3:      NSLog(@"%@", upStr);
   4:      //    [[@"adbDAd" lowercaseString] isEqualToString:@"adsfasd"];

3)可变字符串

   1:     NSMutableString *str = [[NSMutableString alloc] initWithCapacity:0];
   2:      
   3:      [str appendFormat:@"123"];  //123
   4:      //    NSLog(@"%@", str);
   5:      //
   6:      //    NSString *str1 = @"123";
   7:      //    NSString *str2 = [str1 stringByAppendingString:@"aaaa"];
   8:      //    NSLog(@"%@", str2);
   9:      //
  10:      NSRange rang3 = [str rangeOfString:@"3"];
  11:      [str deleteCharactersInRange:rang3];
  12:      NSLog(@"%@", str);
  13:      
  14:      [str insertString:@"aaa" atIndex:0];
  15:      
  16:      // @"3" @""
  17:      [str replaceOccurrencesOfString:@"3"
  18:                           withString:@""
  19:                              options:NSLiteralSearch
  20:                                range:NSMakeRange(0, str.length)];
  21:      NSLog(@"%@", str);

OC语言基础之NSString的更多相关文章

  1. OC语言基础知识

    OC语言基础知识 一.面向对象 OC语言是面向对象的,c语言是面向过程的,面向对象和面向过程只是解决问题的两种思考方式,面向过程关注的是解决问题涉及的步骤,面向对象关注的是设计能够实现解决问题所需功能 ...

  2. 李洪强iOS开发之OC语言基础知识

    OC语言基础知识 一.面向对象 OC语言是面向对象的,c语言是面向过程的,面向对象和面向过程只是解决问题的两种思考方式,面向过程关注的是解决问题涉及的步骤,面向对象关注的是设计能够实现解决问题所需功能 ...

  3. 黑马程序员——OC语言基础语法 面向对象的思想

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结)(一)基础语法 1)关键字 @interface.@implementati ...

  4. OC语言基础之NSArray

    0.数组的分类 NSArray :不可变数组 NSMutableArray : 可变数组 1: // @[] 只创建不可变数组NSArray 2: /* 错误写法 3: NSMutableArray ...

  5. OC语言基础之代码的封装

    1.封装的注意点 1: // 成员变量尽量不要用@public 2: // @public 3: int age; 1: //@public 2: // 只读(readonly):只允许外界访问我的n ...

  6. OC语言基础之NSDictionary

    1.NSDictionary字典的创建 1: // key value 2: // key -==> value 3: NSDictionary *dict = [NSDictionary di ...

  7. OC语言基础之利用property优化封装

    1.property功能用法 1: // @property:可以自动生成某个成员变量的setter和getter声明 2: @property int age;//可以直接免去变量的声明 3: // ...

  8. OC语言基础之函数与方法

    方法 1.对象方法都是以减号 - 2.对象方法的声明必须写在@interface和@end之间    对象方法的实现必须写在@implementation和@end之间 3.对象方法只能由对象来调用 ...

  9. OC语言基础之类的本质

    一.类的本质 1: // 类本身也是一个对象,是个Class类型的对象,简称类对象 2: 3: /* 4: 利用Class 创建 Person类对象 5: 6: 利用 Person类对象 创建 Per ...

随机推荐

  1. vue.单选和多选,纯css自定义单选框样式

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. DOM 2

    1.对文档的信息进行检索常用的方法: getElementById; getElementsByTagName; getAttribute;//得到的是属性值 2把需要的信息添加到DOM中常用的方法: ...

  3. java属性为什么没多态,而是方法多态

    定义 java多肽的特性:方法具有多态性,属性却没有. 准备 基类: 子类: 测试类: 结果: 分析如下 父类 a=new 子类,实际对象时子类.由于向上转型,我们可以用父类在编译期间代替子类,使得编 ...

  4. 【洛谷 P2346】四子连棋(状态压缩,搜索)

    其实这题可以直接二进制状压做,1表示黑棋,0表示白棋,另外记录下2个空点的位置就行了. 具体看代码(冗长): #include <iostream> #include <cstdio ...

  5. karma和jasmine的测试(包括angular测试)

    本篇博客主要就是针对现在日新月异的技术和快速开发,测试被很多人忽略,其实在开发中如何保证代码的质量以及逻辑的完整性,测试显得十分重要,本文就是负责karma+jasmine来测试. 1.搭建测试的环境 ...

  6. Linux XZ格式的解压

    xz这个压缩可能很多都很陌生,不过您可知道xz是绝大数linux默认就带的一个压缩工具. 之前xz使用一直很少,所以几乎没有什么提起. 我是在下载phpmyadmin的时候看到这种压缩格式的,phpm ...

  7. 百度面试题——top K算法

    需求 从一亿个数据中,找出其中最小的10个数. 分析 最笨的方法就是将这一亿个数据,按从小到大进行排序,然后取前10个.这样的话,即使使用时间复杂度为nlogn的快排或堆排,由于元素会频繁的移动,效率 ...

  8. dubbo消费方超时处理

    在我们分布式系统中,远程调用可能随时会出现调用超时,然后抛异常 在dubbo内部,默认设置的是500ms(好像是),所以,对于crud事物大的系统来讲肯定是要自定义超时时间咯,作为消费方,自然是优先级 ...

  9. 【转】spring 装配Bean中构造参数的注入

    转载自:http://www.bianceng.cn/Programming/Java/201307/37027.htm spring 装配Bean中构造参数的注入 spring装配bean中还有一种 ...

  10. OpenCV 3.0中IplImage* 转cv::Mat

    在OpenCV 2.0中使用: IplImage * ipl1, *ipl2; // ... const cv::Mat m = cv::Mat(ipl,false); cv::Mat m2 = ip ...