1、OC基本数据类型(简单铺垫)

//   NSInteger 
在64 位下相当于long,在非64位下相当于 int;

//    CGFloat
在64位下相当于double  在非64位下相当于 float;

//如何使用API文档学习系统类库中类

//help --》Documentation and
API reference

//快捷键 option + 左键
  cmmand + 左键
进入类的头文件(严重警告:进系统头文件之后,退出时一定要按几次  cmmand +
z),看系统头文件适合已经对这个类有很大了解的学生

=========================================================

3、//  
NSString 
  是一个字符串类,而且是一个不可变的字符串类,继承自NSObject
,用NSString创建的字符对象,一经创建就不能修改;

//类簇:将一些私有的子类组合在一起形成一个公共的抽象的超类,那么这个超类就是类簇;

//创建一个字符串对象

char *s = "lanou";

NSLog(@"%s",s);

//oc中创建字符串

NSString *str =
@"lanou";//快速创建字符串的方法

NSLog(@"%@",str);

//创建空字符串

NSString *str1 = [[NSString
alloc]init];

NSLog(@"%@ %p
",str1,str1);

str1 =
@"年后";//这种改变只是指针的重指向

NSLog(@"%@ %p
",str1,str1);

NSString *str2 = [NSString
string];

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

//创建不可变空字符串是没有任何意义的

//格式化创建不可变字符串对象

NSLog(@"lanou");

NSLog(@"lanou%@",@"i love
you");

//我 拼接上 爱凤姐

NSLog(@"我%@",@"爱凤姐");

NSString *str3 =
[[NSString  alloc]initWithFormat:@"%@
%@",@"lanou",@"i love you"];

NSLog(@"%@",str3);

NSString *str4 = [[NSString
alloc]initWithFormat:@"我%@",@"爱凤姐" ];

NSLog(@"%@",str4);

例子:字符串:@"优衣库试衣间" ,@"趣事多"

NSString *str6
=@"优衣库试衣间";

NSString *str7 = @"趣事多";

NSString *str5 = [[NSString
alloc]initWithFormat:@"%@%@",str6,str7];

NSLog(@"%@",str5);

4、//遍历构造器格式化创建字符串方法

NSString *str8 = [NSString
stringWithFormat:@"我在家里洗衣覅,%@",@"你在优衣库买衣服"];

NSLog(@"%@",str8);

//创建字符串的另一种方式(现在已经不用了);

NSString *str9 = [[NSString
alloc]initWithString:@"我在蓝欧37班"];

NSString *str10 = [NSString stringWithString:@"靠
,我也在蓝欧37班"];

NSLog(@"%@",str10);

例子:

//
============================================

5、 //将c语言字符串转换为oc字符串比如:"ios"
  @"ios"

NSString *str11 = [[NSString
alloc]initWithUTF8String:"ios"];

NSLog(@"%@",str11);

NSString *str12 = [NSString
stringWithUTF8String:"ios"];

NSLog(@"%@",str12);

6、//头文件初始化对象方法

//将文件中的字符串内容读入到字符串对象中

//第一个参数:文件的路径 
第二个参数:编码格式  第三个参数: 如果出错了返回值存放的位置

//初始化方法

NSString *str13 = [[NSString
alloc]initWithContentsOfFile:
@"/Users/laouhn/Desktop/37-Product/Lesson/OC/LessonNSString-04/Lesson-04/han.txt"encoding:NSUTF8StringEncoding
error:nil];

NSLog(@"%@",str13);

//遍历构造器方法

NSString *str14 = [NSString
stringWithContentsOfFile:@"/Users/laouhn/Desktop/37-Product/Lesson/OC/LessonNSString-04/Lesson-04/han.txt"
encoding:NSUTF8StringEncoding error:nil];

NSLog(@"%@",str14);

//
==========================================

7、 //操作字符串的方法

//计算字符串长度的方法

NSString *ss =
@"lanou3g";

NSUInteger len = [ss
length];//无符号长整形

NSLog(@"%lu",len);

一个中文占三个字节

NSString *ss2 = @"翔哥
今天晚上区如家吧?";

NSLog(@"%lu",ss2.length);

8、//返回字符串片段的方法

NSString *str15 =
@"abcdefgdef";

NSRange rang = {3,3};

NSString *subString = [str15
substringWithRange:rang];

NSLog(@"%@",subString);

9、//返回字串在父串中范围

rang = [str15
rangeOfString:@"def"];

NSLog(@"loctation:%lu length
: %lu",rang.location,rang.length);//不是点语法

//获取到从零位置到某个位置的字符不包含提供位置的字符

NSString *str16 = [str15
substringToIndex:4];

NSLog(@"%@",str16);

//从某个位置开始获取字符串,直到父串的结尾,包含这个停工未知的字符

NSString *str17 =
[str15  substringFromIndex:4];

NSLog(@"%@",str17);

//返回格式化拼接的字符串

NSString *str20 = [str16
stringByAppendingString:str17];

NSLog(@"%@",str20);

//练习3:把@“cang”后面
拼接上@“是你们的”

NSString *cangString =
@"cang";

NSString *newString
=  [cangString
stringByAppendingFormat:@"%@,%@",@"是你们的",@"不因不均"];

NSLog(@"%@",newString);

NSString *str18 = [cangString
stringByAppendingString:@"是世界的"];

NSLog(@"%@",str18);

//字符串的替换

//将目标子串从父串中用我们给定的替换掉

NSString *str19 = [str18
stringByReplacingOccurrencesOfString:@"cang"
withString:@"波多结衣"];

NSLog(@"%@",str19);

例子:

NSString *str21 =
@"中国北京中南海";

//判断字符串是否具有某个前缀或者后缀

BOOL isHas = [str21
hasPrefix:@"中国北京"];

NSLog(@"%@",isHas ?
@"有这个前缀":@"没有这个前缀");

BOOL Has = [str21
hasSuffix:@"南海"];

NSLog(@"%@",Has ?
@"有这个后缀":@"无这个后缀");

例子:

//=============================================

//比较两个字符串大小

NSString *sstr3 = @"NBa";

NSString *sstr4 = @"NBA";

NSInteger n =
  [sstr3 compare:sstr4];

switch (n) {

case NSOrderedAscending:

NSLog(@"%@
< %@",sstr3,sstr4);

break;

case
NSOrderedSame:

NSLog(@"%@
= %@",sstr3,sstr4);

break;

case
NSOrderedDescending:

NSLog(@"%@
> %@",sstr3,sstr4);

default:

break;

}

//不区分大小写的比较方式

n = [sstr3
caseInsensitiveCompare:sstr4];

NSLog(@"%ld",n);

//===================================================

10、 NSMutableString
  是可变字符串 ,继承自Nsstring,所以Nsstring
所有的方法NSMutableString都可以调用

//这种创建字符串的形式可以提高一定的效率,如果存入的字符串小于开辟的虚拟空间长度,则直接放入,免去了开辟空间的时间,如果此时开辟的空间小于要放入字符串的长度,此时就要再开辟空间

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

//插入一个字符串

[mStr insertString:@"索宁"
atIndex:0];

NSLog(@"%@",mStr);

//创建可变字符串的另一种形式

NSMutableString *mStr1 =
[[NSMutableString alloc]initWithString:@"我和他有一个约会"];

NSLog(@"%@",mStr1);

//快速创建字符串,必须在后面加上  .mutableCopy

NSMutableString *mStr2 =
@"我与僵尸有一个约会".mutableCopy;

NSLog(@"%@",mStr2);

11、 //可变字符串拼接

//格式化拼接

[mStr2
appendFormat:@"%@",@"在日本岛" ];

NSLog(@"%@",mStr2);

//删除某段字符串

[mStr2
appendString:@"吃着炸鸡喝着啤酒"];

NSLog(@"%@",mStr2);

NSRange rang1 = {1,8};

[mStr2
deleteCharactersInRange:rang1];

NSLog(@"-----%@",mStr2);

//=========================================================

//改可变字符串

[mStr2
replaceCharactersInRange:NSMakeRange(2, 4)withString:@"任命广场"];

NSLog(@"%@",mStr2);

//每个单词的首字母大写

NSMutableString *mStr3 = @"i
am student come from DanCheng".mutableCopy;

NSString * upFirst
=  [mStr3 capitalizedString];

NSLog(@"%@",upFirst);

//将所有的字母都大写

NSString *upAllWord =   [mStr3
uppercaseString];

NSLog(@"%@",upAllWord);

//将所有字母都小写

NSMutableString *mStr4 = @"I
AM STUDENT COME FROM DANCHENG".mutableCopy;

NSString *loweAllWord = [mStr4
lowercaseString];

NSLog(@"%@",loweAllWord);

//================转载请注明出处=================


NSString/NSMutable字符串——韩俊强…的更多相关文章

  1. iOS中 扫描二维码/生成二维码详解 韩俊强的博客

    最近大家总是问我有没有关于二维码的demo,为了满足大家的需求,特此研究了一番,希望能帮到大家! 每日更新关注:http://weibo.com/hanjunqiang  新浪微博 指示根视图: se ...

  2. iOS中 扫描二维码/生成二维码具体解释 韩俊强的博客

    近期大家总是问我有没有关于二维码的demo,为了满足大家的需求,特此研究了一番,希望能帮到大家! 每日更新关注:http://weibo.com/hanjunqiang  新浪微博 指示根视图: se ...

  3. iOS中 HTTP/Socket/TCP/IP通信协议详解 韩俊强的博客

    每日更新关注:http://weibo.com/hanjunqiang  新浪微博 简单介绍: // OSI(开放式系统互联), 由ISO(国际化标准组织)制定 // 1. 应用层 // 2. 表示层 ...

  4. iOS中 HTTP/Socket/TCP/IP通信协议具体解释 韩俊强的博客

    简介: // OSI(开放式系统互联), 由ISO(国际化标准组织)制定 // 1. 应用层 // 2. 表示层 // 3. 会话层 // 4. 传输层 // 5. 网络层 // 6. 数据链接层 / ...

  5. NSString的几种常用方法—韩俊强博…

    要把 "2011-11-29" 改写成 "2011/11/29"一开始想用ios的时间格式,后来用NSString的方法搞定. 1.创建NSString字符串 ...

  6. iOS中 Realm的学习与使用 韩俊强的博客

    每日更新关注:http://weibo.com/hanjunqiang  新浪微博! 有问题或技术交流可以咨询!欢迎加入! 这篇直接搬了一份官方文档过来看的 由于之前没用markdown搞的乱七八糟的 ...

  7. iOS中 动态热修补技术JSPatch 韩俊强的博客

    .1.4) JSPatch bridge Objective-C and JavaScript. You can call any Objective-C class and method in Ja ...

  8. iOS开发中的零碎知识点笔记 韩俊强的博客

    每日更新关注:http://weibo.com/hanjunqiang  新浪微博 1.关联 objc_setAssociatedObject关联是指把两个对象相互关联起来,使得其中的一个对象作为另外 ...

  9. iOS中 最新支付宝支付(AliPay) 韩俊强的博客

    每日更新关注:http://weibo.com/hanjunqiang  新浪微博 现在的支付方式一般有三种, 支付宝, 微信, 网银. 个人觉得最简单易用的还是支付宝, 微信虽然看起来币支付宝要简单 ...

随机推荐

  1. MongoDB Java

    MongoDB Java 环境配置 在Java程序中如果要使用MongoDB,你需要确保已经安装了Java环境及MongoDB JDBC 驱动. 你可以参考本站的Java教程来安装Java程序.现在让 ...

  2. PHP 实例 AJAX 与 XML

    在 PHP 中,AJAX 可用来与 XML 文件进行交互式通信,具体的通信过程,请参考本文内容! AJAX XML 实例 下面的实例将演示网页如何通过 AJAX 从 XML 文件读取信息: 实例   ...

  3. 守护态运行Docker容器

    更多的时候,需要让 Docker 容器在后台以守护态(Daemonized)形式运行.此时,可以通过添加 -d 参数来实现. 例如下面的命令会在后台运行容器. $ sudo docker run -d ...

  4. 使用GDAL进行RPC坐标转换

    使用GDAL进行RPC坐标转换 对于高分辨率遥感卫星数据而言,目前几乎都提供了有理函数模型(RFM)来进行图像校正(SPOT系列提供了有理函数模型之外还提供了严格轨道模型).对遥感影像进行校正目前最常 ...

  5. 让你的代码量减少3倍!使用kotlin开发Android(一)

    让你的代码量减少3倍!使用kotlin开发Android(一) 创建Kotlin工程 本文同步自博主的私人博客:wing的地方酒馆 写在前面 使用kotlin开发android已经两周多了.得到的好处 ...

  6. Linux 高性能服务器编程——Linux服务器程序规范

    问题聚焦:     除了网络通信外,服务器程序通常还必须考虑许多其他细节问题,这些细节问题涉及面逛且零碎,而且基本上是模板式的,所以称之为服务器程序规范.     工欲善其事,必先利其器,这篇主要来探 ...

  7. TeamView 无法捕捉画面问题的解决办法

    teamview是个非常不错的远程协助软件,你要是在项目中还搞个QQ远程协助啥的就显的非常不专业了. 在teamview连接远程后,看到的是一片漆黑,中间框提示"现在无法捕捉画面.这可能是由 ...

  8. CCSpriteBatchNode中存放元素的一点理解

    该对象只能包含基于CCSprite的对象,并且该要求适用于一切子孙对象.即加入CCSpriteBatchNode的任何对象都必须是CCSprite或其子类. 比如CCSpriteBatchNode包含 ...

  9. Matlab:如何查找给定目录下的文件

    我们有很多目录,每个目录下都有些有用的文件,比如图像文件,如何自动的扫描这些文件呢? 可以使用dir函数来完成这个任务. 比如假设给定目录 baseDir,它是一个字符串,包含的是某个目录,例如'./ ...

  10. iOS开发出错whose view is not in the window hierarchy!的解决

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 一个简单的单窗口App在运行时出现错误: 2016-04-07 ...