1.NSString 初始化
  初始化一个NSString类课直接进行赋值,例如 NSString *str = @"Hello World!,
可以使用已有的一个字符串初始化,列如 - (id)initWithString:(NSString *)aStrin;,

还可以使用格式化初始化方法,列如NSString *msg = [[NSString alloc]initWithFormat:@"%@,%d",name,age];,也可以使用C语言字符串来初始化一个字符串,列如 [NSString stringWithUTF8String:"c string!"];.下面代码展示了NSString的初始化过程.

//使用现有字符串初始化
str = [NSString alloc]initWithString:str];
NSLog(@"str = %@",str);
str = [NSString initWithString:str];
NSLog(@"str = %@",str);
//使用C语言字符串初始化
str = [NSString stringWithUTF8String:"c string"];
NSLog(@"str = %@",str);
//使用格式化字符串
NSString *name = @"tom";
int age = 30;
NSString *msg = [[NSString alloc]initWithFormat:@"%@,@d",name,age];
NSLog(@"msg = %@",msg);
NSString *msg = [NSSting initWithFormat:@"%@,%d",name,age];
NSLog(@"msg = %@",msg);

 2.求字符串长度,获取某个索引位置的字符.

//1.求字符串长度
NSString *str = @"Hello World!";
NSUInteger len = [str length];
NSLog(@"%lu",len);
//2.获取某个位置的字符
char c = [str characterAtIndex:0];

3.取子字符串.

//1.根据1个索引截取字符串
NSString *str = @"Hello World!";
NSString *subString = [str substringFromIndex:6]; //从某个索引开始
NSLog(@"%@",subString);
NSString *subString = [str substringToIndex:6]; //到某个索引
NSLog(@"%@",subString);
//2.根据两个索引范围截取字符串
NSRange range = NSMakeRange(2,3);
subString = [str substringWithRange:range];
NSLog(@"%@",subString);

4.NSData和字符串之间的转换.

NSString *str = @"Hello World!";
NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding];
str = [[NSString alloc]initWithData: data encoding: NSUTF8StringEncoding];
NSLog(@"%@",str);

5.字符串和数字类型的转换

NSString *str = @"123";
int i = [str intValue]; // 将字符串str转换成整形i
double d = [str doubleValue];
NSLog(@"%d,%lf",i,d);

6.字符串的大小写转换

NSString *str = @"Hello World!";
str = [str uppercaseString]; // 将字符串转换为大写
NSLog(@"%@",str);
str = [str capitalizedString]; // 将字符串转换首字母为大写
NSLog(@"%@",str);
str = [str lowercaseString]; // 将字符串转换为小写
NSLog(@"%@",str);

7.字符串的比较.

NSString *str1 = @"abcd";
NSString *str2 = @"abce";
NSComparisonResult result = [str1 compare:str2];
if (result == NSOrderedAscending) {
NSLog(@"str1 < str2");
}else if(result == NSOrderedDescending){
NSLog(@"str1 > str2");
}else {
NSLog(@"str1 == str2");
}

8.读写文件

NSString *filePath = @"/Users/hongdeng/Desktop/test.text";
NSString *content = @"file content";[content writeToFile:filePath atomically:YES encoding: NSUTF8StringEncoding error:nil];
content = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:nil];
NSLog(@"str = %@",content);

NSString学习笔记相关推荐

  1. Objective-C学习笔记2013[NSString]字符串[可变字符串中,加用app减用delete]

    Objective-C学习笔记 小常识: NS是Cocoa类对象类型的前缀,来源于史蒂夫-乔布斯被苹果开除那段时间建立的公司NeXT. @是Cocoa元素的前缀,很多地方我们会看到,比如接下来... ...

  2. UITableView 学习笔记

    http://www.cnblogs.com/smileEvday/archive/2012/06/28/tableView.html UITableView学习笔记 作者:一片枫叶 看TableVi ...

  3. 学习笔记:UINavigationbar的背景修改方法集合

    最近我突然发现UINavigationbar背景修改的方法不起作用了,代码如下: 1 2 3 4 5 6 7 8 9 @implementation UINavigationBar (CustomIm ...

  4. Leonbao:MapKit学习笔记

    以下仅作了解, 实际使用以百度地图居多, 因为百度地图有动态路径规划等接口 MapKit学习笔记    原帖: http://www.cocoachina.com/bbs/read.php?tid-6 ...

  5. Object C学习笔记22-#define 用法

    上一篇讲到了typedef 关键字的使用,可以参考文章 Object C 学习笔记--typedef用法 .而在c中还有另外一个很重要的关键字#define. 一. #define 简介 在C中利用预 ...

  6. Object C学习笔记12-集合

    Object C学习笔记12-集合 2014-03-08 17:25 by 贺臣, 262 阅读, 0 评论, 收藏, 编辑 这里讲到的集合是指Set集合,其实Array也是一种类型的集合.在Obje ...

  7. mat opencv 修改roi_设置图片ROI(OpenCV学习笔记之二)

    ROI相关简介 ROI是什么 ROI是region of interest首字母的简写,翻译为感性趣的区域.其实在写本篇之前应该写一篇关于图片是什么的学习笔记,但又感觉里面没多少东西还不能承载一篇学习 ...

  8. iOS学习笔记-地图MapKit入门

    代码地址如下: http://www.demodashi.com/demo/11682.html 这篇文章还是翻译自raywenderlich,用Objective-C改写了代码.没有逐字翻译,如有错 ...

  9. IOS开发学习笔记(一)

    概述: iOS是苹果开发的手持设备操作系统(iPhone,iPad,iPod touch,iPad mini). 基于UNIX,层次架构:核心操作系统层(Core OS)-> 核心服务层(Cor ...

最新文章

  1. TCGA收官之作—27篇重磅文献绘制“泛癌图谱”
  2. 安卓入门系列-06常见布局之ConstraintLayout(约束布局)
  3. Windows7下用VirtualBox安装Ubuntu网卡配置
  4. 数组copyWithin()方法以及JavaScript中的示例
  5. Arrays.toList工具类
  6. pta-5、产生每位数字相同的n位数 (10 分)
  7. android - startActivity浅谈
  8. 2008总有一种恐惧让你泪流满面
  9. Starship Troopers
  10. Gprinter Android SDK V1.0 使用说明
  11. sca60c使用程序_第3部分:SCA应用程序的工作负载平衡的WebSphere MQ客户端连接
  12. 连载]第四讲 测量准确度、重复性、复现性及标准偏差
  13. C语言题目:5-6 购物(一) (25 分)
  14. Python Boss
  15. 工具使用技巧:将图片公式转为Word里的公式
  16. ChatGPT 如何获取API Key
  17. 使用Python解数学方程
  18. mac系统如看OFD文档
  19. 进程间通信的方式(附代码分析)
  20. 极光推送SDK引起的内存泄露排查

热门文章

  1. 用ChatGPT搜索论文教程
  2. ShareTechnote系列LTE(8):小区搜索
  3. 支持DoH的DNS服务器,微软 Win11 支持私密 DNS-over-HTTPS(DoH),附启用教程
  4. 一位程序员的独白:尽管我一生坎坷,但我仍被岁月折磨的死去活来
  5. Delphi的方向?
  6. layui实现增删改查——图书管理
  7. kiwi-syslog9.5 破解版
  8. 手机开机电流多少正常手机电流分析教程
  9. 【读书笔记】《小王子》- [法] 安托万•德•圣埃克苏佩里 / [法国] 安东尼·德·圣-埃克苏佩里
  10. 国产化服务器挂载硬盘,使用国产免费的软件WinMount将VMDK(VMWare)挂载为虚拟磁盘...