字符串的定义、替换、比较、截取
来源:互联网 发布:网络教育本科毕业条件 编辑:程序博客网 时间:2024/06/06 09:42
一、字符串
1、C语言中,字符串是由char(ASCII码)字符组成。
2、OC中,字符串是由unichar(Unicode)字符组成。一个unicode字符类型在内存中占两个字节。
3、NSString,不可变字符串,即:创建以后,内容和⻓度不能更改
4、NSMutableString,可变字符串,即:创建以后,内容还可以修改
5、创建⼀个新的字符串,可以使⽤实例⽅法和便利构造器。
不可变字符串的修改操作,本质就是得到⼀个新的字符串。 不可变字符串的修改⽅法以string开头,有返回值。 可变字符串的修改⽅法没有返回值,修改原字符串。
通过initWithString:来初始化对象,如果用常量区字符串来初始化,直接将常量区地址存储到指针变量中;如果 用其他字符串来初始化,先将字符串内容拷贝到堆区,再将堆区地址返回。
用initWithFormat:来初始化对象,将常量区内容复制到堆区,再将堆区地址返回
字符串长度方法:计算的是所有Unicode字符的个数
1、 从字符串的第几个位置开始,一直到字符串的结尾
NSString *substring = [string substringFromIndex:3];
2、定义一个range结构体变量,规定起始位值和长度
NSRange range = NSMakeRange(2, 4);
根据范围从字符串中截取子字符串
NSString *sub2 = [string substringWithRange:range];
3、字符串替换的方法
NSString *str = @"hello boy";
NSString *str = @"hello boy";
NSString *newStr = [str stringByReplacingOccurrencesOfString:@"hello" withString:@"hi"]
4、判断两个字符串是否完全相等
BOOL equal = [@"123" isEqualToString:@"123"]
5、字符串比较
NSLog(@"compare = %ld",[@"abc" compare:@"ABC" options:1])
二、数组-有序集合
iOS中存放数据的容器类都称为集合(collection)。 数组是有序集合,只能存放对象 数组有下标(index)的概念,靠index来索引元素,下标从0开始。 数组分不可变数组(NSArray)和可变数组(NSMutableArray)。数组只能存放对象。
需要存储整型或者结构体的时候,如何做呢?
存储:把整型或者结构体 转换为对象,将对象存⼊数组
读取:先取出对象,再将对象还原为整型或者结构体。
三、值对象
NSNumber 数值对象: 完成数值标量和对象类型的互转 基本类型(int,float等)转换为NSNumber NSNumber转换为基本类型(int,float等)
NSValue 完成标量和对象类型的互转 结构体(NSRange等)、指针等转换为NSValue NSValue转换为结构体(NSRange等)、指针等
四、总结
1、可变对象通常是不可变对象的子类,包含父类的所有方法,并且 具有增删改的功能。
2、可变对象的增删改都是对自身的操作;不可改变对象的增删改都会生成新的对象,原对象不变。
3、数组只能存储对象类型的数据,有序,靠下标索引对象。
4、NSNumber、NSValue主要是为了完成标量和对象的互转,便于与 collection配合使⽤。
0 0
- 字符串的定义、替换、比较、截取
- js字符串的截取,替换
- 字符串的截取和替换
- String字符串操作--切割,截取,替换,查找,比较,去空格.....
- python字符串操作,截取,拼接,替换,删除,比较,查找
- String字符串操作--切割,截取,替换,查找,比较,去空格.....
- 批处理中字符串的截取和替换
- OC字符串的截取和替换
- python字符串的截取和替换
- NSString 字符串的截取和替换
- C#有关字符串的分割,替换,截取
- 字符串截取,替换
- 字符串截取和替换
- 字符串 截取 替换
- 截取,拼接,替换字符串
- NSString:创建,长度,取字符,是否以某字符串开头,结尾, 查找指定字符串的范围,截取,拼接,替换,比较,替换,数值转换,大小写转换
- 截取字符串 替换字符串 函数
- PHP 函数 截取字符串效率的比较
- 大型数据库技术1
- 欢迎使用CSDN-markdown编辑器
- HDU1532 - Drainage Ditches(网络流)
- scala 学习第二章 函数
- C++实现复数计算
- 字符串的定义、替换、比较、截取
- 谷歌推荐的图片加载框架--Glide的简单介绍
- 我们编程吧 之 python 学习手册0.75
- python logging 替代print 输出内容到控制台和重定向到文件
- 往文件中写入内容(代码示例)
- 网络编程_TCP_Socket通信原理_多个客户端_聊天室原理JAVA189-190
- Java 常见面试题整理
- CramFS文件系统
- Class.forName的作用以及为什么要用它