iOS
使用过程中我们经常会使用到 Java 中类似字符串的函数和一些常量。在 iOS
中这些常量一般是以对象的形式存在。
NSString
(1)NSString
继承
1 | NSString *name = @"bai liangliang"; |
在 Xcode 中按着 command
+ 鼠标左键,打开 NSString.h
的实现文档。可以看到下面代码:
1 | @interface NSString : NSObject <NSCopying, NSMutableCopying, NSSecureCoding> |
NSString
继承 NSObject
的对象,下面讲述 NSString
的相关使用方法。
(2)NSString
初始化
- 使用字符串直接初始化
1 | NSString *name = @"bai liangliang"; |
- 使用类方法直接初始化
1 | //使用现有的 string 字符对象直接进行初始化 |
使用上面的 API 进行 NSString
初始化的实例
1 | NSString *nameString = [NSString stringWithString:name]; |
- 使用实例方法直接初始化
1 | //直接初始化 |
1 | NSString *nameString = [[NSString alloc] initWithString:name]; |
(3)NSString
基本使用方法
- 获取当前字符的长度&获取具体位置的字符
1 | NSUInteger lengthString = nameString.length; |
- 获取某段字符
1 | - (NSString *)substringFromIndex:(NSUInteger)from;//从某个具体位置开始获取字符 |
- 字符串的比较
1 | //字符串进行比较可以设置比较的类型 |
- 对当前字符串添加
1 | - (NSString *)stringByAppendingString:(NSString *)aString;//对现有的字符串进行连接 |
- 对当前字符进行分割
1 | - (NSArray<NSString *> *)componentsSeparatedByString:(NSString *)separator; |
- 对字符替换
1 | - (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target withString:(NSString *)replacement options:(NSStringCompareOptions)options range:(NSRange)searchRange API_AVAILABLE(macos(10.5), ios(2.0), watchos(2.0), tvos(9.0)); |
- 把字符保存在本地
1 | - (BOOL)writeToURL:(NSURL *)url atomically:(BOOL)useAuxiliaryFile encoding:(NSStringEncoding)enc error:(NSError **)error; |
NSMutableString
NSMutableString
继承自 NSString
下面列出 NSMutableString
使用方法:
- 字符串的初始化
1 | //实例方法对 可变字符 进行初始化 |
- 对字符内容替换
1 | - (void)replaceCharactersInRange:(NSRange)range withString:(NSString *)aString;//替换一定范围内的字符 |
- 对特定字符相关修改
1 | - (void)insertString:(NSString *)aString atIndex:(NSUInteger)loc;//在特定位置 插入相关字符 |
今天这里仅仅对 NSString
和 NSMutableString
进行简单的一些整理,列出 iOS 中一些给定的 API 展示其基本的使用方法。
如果有兴趣读者可以自己探索下相关方法。