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. JS模块化工具requirejs教程02

    基本API require会定义三个变量:define,require,requirejs,其中require === requirejs,一般使用require更简短 define 从名字就可以看出 ...

  2. CSS3奇偶选择器

    .search-form td:nth-child(odd){//奇 width:100px; text-align:right;} .search-form td:nth-child(even){/ ...

  3. RPC-Thrift(三)

    TProtocol TProtocol定义了消息怎么进行序列化和反序列化的. TProtocol的类结构图如下: TBinaryProtocol:二进制编码格式: TCompactProtocol:高 ...

  4. 重新认识REST

    大家对REST的认识? 谈到REST大家的第一印象就是通过http协议的GET,POST,DELETE,PUT方法实现对url资源的CRUD(创建.读取.更新和删除)操作.比如http://www.a ...

  5. TCP的三次握手和四次挥手+TCP和UDP的区别

    TCP的三次握手: LISTEN:表示服务器端的某个socket处于监听状态,可以接收连接了. SYN_SENT:当客户端SOCKET执行connect连接时,它首先发送syn报文,随即会进入到此状态 ...

  6. java小工具——timer

    定时器Timer 用途:做定时器用的. public static void main(String[] args) { Timer timer = new Timer(); timer.schedu ...

  7. [ nginx ] 带宽下载限速

    nginx上了一个APP提供给用户下载,考虑到带宽占用的问题,决定在nginx上做下载限速处理. 操作系统:Centos6.7 X64 nginx版本:nginx/1.11.3 根据官方文档: 对ng ...

  8. MATLAB规划问题——线性规划和非线性规划

    1.线性规划 求线性规划问题的最优解有两种方法,一种方法是使用linprog命令,另一种是使用optimtool工具箱,下面分别介绍这两种方法. ①linprog命令 一般情况下,Linprog命令的 ...

  9. JSONObject常用的API

    http://www.cnblogs.com/java-pan/archive/2012/04/07/jsonobject.html 1.介绍基于JSONObject 1.1的API 2.只介绍常用的 ...

  10. Linux下如何批量转码iconv

    来源:http://hi.baidu.com/curioz/blog/item/2555863514f9491d90ef390d.html 下载了不少文本txt,如verycd上的致纯书苑,解压看看是 ...