【学习ios之路:Object-C】NSString和NSArray

1.字符串

*   字符串常用方法

*   字符串创建方法(最常用)

*   字符串追加方法

*   求子串 以及字符串中取某个字符

*   字符替换

*   字符串与其他转换(经常用)

*   字符串改变大小写

*   字符串比较方法(经常用)

例如:

1).创建一个字符串对象方法:

  NSstring * str1 = @"hello"; //1.直接赋值
  //2.通过initWithString
  NSString * str = [[NSString alloc]initWithString:@"hello world!"];
<pre name="code" class="objc">  //3.initWithUTF8String把C的字符串转化为OC的字符串

NSString * str_1 = [[NSString alloc]initWithUTF8String:"hello world"]; int a = 123;//用格式化字符串初始化 NSString * str_3 = [[NSString alloc]initWithFormat:@"a=%d%s%@", a,"abcd", @"efg"]; //可完成字符串的拼接以及完成C的字符串与OC的字符串的转化
NSString * str1 = [NSString stringWithString:@"hello world"]; NSString * str2 = [NSString stringWithUTF8String:"hello world"]; NSString * str3 = [NSString stringWithFormat:@"%s","hello world"];


2).字符串的转化

 NSString * str = @"hello";
 const char *p = [str UTF8String];将OC字符串转化为C的字符串
 NSString *str1 = @"123";
 int a = [str intValue];//将数字串转化成整型数据
 [str floatValue];//将数字串转化成float型
 [str doubleValue];//将数字串转化成double型

3).常用的字符串操作

	<pre name="code" class="objc">  //求字符串长度
  NSLog(@"%ld",[str1 length]);
 
  //获取字符串中某个位置的字符
  NSLog(@"%c", [str1 characterAtIndex:1]);
 
  //比较两个字符串是否相等,相等返回YES(1),不相等返回NO(0)
  BOOL ret =  [str1 isEqualTo:str2];
 <span style="font-size:18px;"></span><pre name="code" class="objc"><pre name="code" class="objc">  //比较两个字符串的大小,str1大于 返回1  相等返回0 小于返回-1
  long ret1 = [str1 compare:str2];
 <span style="font-size:18px;"></span><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc">  //不区分大小写比较字符串大小
  long ret2 = [str1 caseInsensitiveCompare:str2];
 <span style="font-size:18px;"></span><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc">  //将字符串中的所有小写字符转换成大写 不改变原来的字符串
  NSString* ptr = [str2 uppercaseString];
 <span style="font-size:18px;"></span><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc">  //将字符串中的所有大写字符转换成小写 不改变原来的字符串
  ptr = [str1 lowercaseString];
 <span style="font-size:18px;"></span><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc">  //将字符串中出现的第一个字母转换成大写,其余字母小写































ptr = [str3 capitalizedString]; NSString* str4 = @"hello world";

<pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc">   //查找子串,找不到返回NSNotFound 找到返回location和length































NSRangerange = [str4 rangeOfString:@"wr"]; if (range.location != NSNotFound) { NSLog(@"%ld %ld",range.location, range.length); } NSString* str5 = @"helloworld";

<pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc">   //字符串抽取 从下标0开始到4 不包括4
   NSString* ptr1 = [str5 substringToIndex:4];
<pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc">
   //从下标5开始抽取到字符串结束 包括5
   NSString* ptr2 = [str5 substringFromIndex:5];
  
   //NSRange range = NSMakeRange(4,3);
   NSRange range = {4,3};//结构体初始化
 <pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc">//在range指定范围内抽取































































































































<pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc"><pre name="code" class="objc">//在range指定范围内抽取































































































































//获取长度为3,从下标为4的字串 NSString* ptr3 = [str5 substringWithRange:range]; NSString* ptr4 = [str5 substringWithRange:NSMakeRange(4,3)]; NSString* str = @"www.1000phone.com";

//判断字符串是否是www开头

BOOL ret = [str hasPrefix:@"www"]; NSString* str1 = @"1.txt";

//判断字符串是否是.txt结尾

BOOL ret1 = [str hasSuffix:@".txt"]; //NSMutableString可变字符串(动态增加和减少的)

//继承于NSString可以使用NSString的所有方法 //将不可变字符串转化为可变的字符串. NSMutableString* str = [[NSMutableStringalloc]initWithString:@"hello"];

//在指定下标(不越界)位置插入NSString类型字符串 [str insertString:@"123"atIndex:1];

//在字符串末尾追加字符串. [str appendString:@"123"];

//从0下标开始删除2个字节 [str deleteCharactersInRange:NSMakeRange(0, 2)];

//对字符串赋值,即修改可变字符串 [str setString:@"hehe"];

//将指定下标长度位置的字符串替换成IOS [str replaceCharactersInRange:NSMakeRange(3, 1) withString:@"ios"];
































































































































				
时间: 2024-07-28 19:00:00

【学习ios之路:Object-C】NSString和NSArray的相关文章

【学习ios之路:Object-C】继承,便利构造器.NSString应用

1.继承定义 公共父类使用场景:当多个类之间存在部分相同的特征以及行为时,为了防止多个类中写重复代码,新建一个公共的父类,父类中填写多个类中相同的特征以及行为,让多个类继承即可. 2.继承特点 *.继承内容:父亲全部的实力变量以及方法 *.继承过来的内容的所有权:继承过来的内容是自己的,只不过来源于父类, *.OC中只允许单继承,也就是一个类只能有一个父类, *.继承具有传递性.A继承自B,B继承自C,A拥有B和C的所有的内容. *.继承不具备互逆性;不能A继承B,B再继承A. *.继承过来的内

【学习ios之路:Object-C】类与对象

1.面向对象和面向过程概念 1).面向过程 面向过程:以过程为核心,注重的是完成事件的详细步骤,一步一步如何实现. 2).面向对象 面向对象:以事物为核心,注重的是参与该事件的事物应该具备的功能.所以完成该事件只是事物所有功能中的一个功能. 2.类与对象 类: 类是具有相同特征以及行为的事物的抽象,它是一个抽象的概念,不具体. 对象: 类的实例.类的具体体现.生活中的万物都是对象. 3.OO与OOP OO:(Object Oritented)面向对象 OOP:(Object Oriented P

【学习ios之路:UI系列】iOS沙盒机制,文件读取,归档与反归档

1.IOS中的沙盒机制 IOS中的沙盒机制是一种安全体系,它规定了应用程序只能在为该应用创建的文件夹内读取文件,不可以访问其他地方的内容.所有的非代码文件都保存在这个地方,比如图片.声音.属性列表和文本文件等. 特点: 1.每个应用程序都在自己的沙盒内 2.不能随意跨越自己的沙盒去访问别的应用程序沙盒的内容 3.应用程序向外请求或接收数据都需要经过权限认证 每个沙盒含有3个文件夹:Documents, Library 和 tmp.Library包含Caches.Preferences目录.如下图

【学习ios之路:Object-C】字典.集合.

1.不可变数据字典(NSDicionary) 字典:用来存储具有一一对应关系的数据. 一个key 对应一个 value ,key起到了唯一标示的作用,key必须是唯一的,但是一个vlaue可以对应多个key. 字典存储的是无序的元素,一对键值对组成了字典中的一个元素. ①.不可变字典初始化赋值 <span style="font-size:18px;"> //笑笑语法 NSDictionary *dic = @{@"name":@"zhangd

【学习ios之路:UI系列】UIProgressView

实现类似读取数据进度条效果 代码如下: ①创建UIProgressView对象 1)定义属性 { NSTimer *_proTimer;//计时 } @property (nonatomic, retain) UIProgressView *proView; //显示进度信息 @property (nonatomic, retain) UILabel *proLabel; @property (nonatomic, assign) float proValue;//保存进度值 //创建控件UIP

【学习ios之路:Objective-C】OC中常用的系统排序方法

①.OC中常用排序方法: 1).不可变数组 - (NSArray *)sortedArrayUsingSelector:(SEL)comparator; - (NSArray *)sortedArrayUsingComparator:(NSComparator)cmptr; 2)可变数组 - (void)sortUsingSelector:(SEL)comparator; - (void)sortUsingComparator:(NSComparator)cmptr; 3).字典排序 - (NS

【学习ios之路:UI系列】NSPredicate相关用法

NSPredicate NSPredicate是一个Foundation类,它指定数据被获取或者过滤的方式. 它的查询语言就像SQL的WHERE和正则表达式的交叉一样,提供了具有表现力的,自然语言界面来定义一个集合被搜寻的逻辑条件. NSPredicate的几种用法 ①常见形式 NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name == 'zhangdan'"]; //注意:如果谓词串中的文本块未被引用,则被看

【学习ios之路:UI系列】实现轮播图效果(UIImageView,UIScrollView,UIPageControl,NSTimer相结合)

实现效果,在不点击的情况下,自定滚动,点击时,停止.如下图 部分代码如下: //调用NSTimer方法,自定计时 - (void)autoScroll { self.timer = [NSTimer scheduledTimerWithTimeInterval:1.5 target:self  selector:@selector(scrollToRight) userInfo:nil repeats:YES]; } //实现触发方法 - (void)scrollToRight { [UIVie

【学习ios之路:UI系列】UIAlertView. UIActionSheet 和 UIAlertController

1.UIAlertView ①简单无代理模式,代码如下: UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"提示" message:@"这是一个警告" delegate:nil cancelButtonTitle:@"取消" otherButtonTitles:@"确定",  @"按钮一", @"按钮二", nil