use*_*469 2 string objective-c
假设我有这个:
NSString *str = @"This is a sample string";
如何将每个单词添加到NSMutableArray中的方式拆分字符串?
在VB.net中,您可以这样做:
Dim str As String
Dim strArr() As String
Dim count As Integer
str = "vb.net split test"
strArr = str.Split(" ")
For count = 0 To strArr.Length - 1
MsgBox(strArr(count))
Next
Run Code Online (Sandbox Code Playgroud)
那么如何在Objective-C中做到这一点呢?谢谢
NSArray *words = [str componentsSeparatedByString: @" "];
Run Code Online (Sandbox Code Playgroud)
请注意,words它作为自动释放对象返回,因此您可能需要retain它,除非您使用ARC.
此外,返回的数组不可变,因此您需要自己创建一个并使用返回的数组初始化它:
NSArray *words = [str componentsSeparatedByString: @" "];
NSMutableArray *mutableWords = [NSMutableArray arrayWithCapacity:[words count]];
[mutableWords addObjectsFromArray:words];
Run Code Online (Sandbox Code Playgroud)
要么:
NSMutableArray *mutableWords = [[str componentsSeparatedByString: @" "] mutableCopy];
Run Code Online (Sandbox Code Playgroud)
最后一个语句返回一个必须释放的对象,copy为您提供对象的所有权.
| 归档时间: |
|
| 查看次数: |
3487 次 |
| 最近记录: |