2010-02-05 39 views
5

如何在Objective-C的特定索引处打印数组元素?我的代码如下所示:如何在Objective-C中打印单个数组元素?

NSString *String=[NSString StringWithContentsOFFile:@"/User/Home/myFile.doc"]; 
NSString *separator = @"\n"; 
NSArray *array = [String componetntsSeparatedByString:separator]; 
NSLog(@"%@",array); 

我可以一次打印阵列的全部内容,但我想每个索引处的元素分配到一个字符串,如...

str1=array[0]; 
str2=array[1]; 
str3=array[0];...this continues 

我该怎么做?

+0

嘿我得到了答案...对不起....它的 NSLog(@“%@”,[array objectAtIndex:index]); – suse 2010-02-05 06:36:14

回答

8

你想要objectAtIndex:方法。例如:

NSString *str1 = [array objectAtIndex:0]; 
NSString *str2 = [array objectAtIndex:1]; 
NSString *str3 = [array objectAtIndex:2]; 

documentation

objectAtIndex:
返回位于索引的对象。

- (id)objectAtIndex:(NSUInteger)index 

参数
索引
接收器的范围内的索引。

返回值
位于索引的对象。

讨论
如果索引超出阵列的端部(即,如果索引大于或等于由count返回的值),一个NSRangeException上升。

+0

嘿亚..谢谢... 但是,我们有任何函数来读取数组中有多少数组元素。 ,因为我需要将数组元素中的每一个放在一个字符串中,然后对字符串进行一些操作,然后再将下一个数组元素放入相同的字符串中并对字符串执行一些操作......同样继续。所以我想使用for循环。 ,因此for循环中的终止条件,应该写什么?帮我。 其类似于(int n = 0; n <** ??这里写的**; n ++) { NSString * string = [array objectAtIndex:n]; //做一些操作 } – suse 2010-02-05 06:50:24

+0

嘿...任何人plzzz回复 – suse 2010-02-05 07:37:26

+0

嘿..没问题..我得到了解决方案:) – suse 2010-02-05 08:47:39

0

如果这只用于调试,您可以尝试在gdb中使用po <>。

0

随着铿锵的3.3版,您可以使用[index]符号,所以

NSString *str1 = array[0]; 

将现在的工作。详情请参阅here

相关问题