什么用第二NSDictionay邮件正文旁边时,这条线是指:这是什么奇怪的代码符号的意思
NSDictionary *item = (NSDictionary *) [self.content objectAtIndex:indexPath.row];
什么用第二NSDictionay邮件正文旁边时,这条线是指:这是什么奇怪的代码符号的意思
NSDictionary *item = (NSDictionary *) [self.content objectAtIndex:indexPath.row];
self.content
是(我猜!)NSArray
类型的属性
这行会在索引indexPath.row
处返回对象(接缝为NSDictionary
)。 (NSDictionary*)
将对象投射到NSDictionary
。
(NSDictionary *)
类型转换。它告诉编译器假定objectAtIndex:
方法返回的对象的类型为NSDictionary *
,即使方法的返回类型不同。
这是一个投,在C.
在你的情况, “self.content” 似乎是一个NSArray。所以[self.content objectAtIndex:indexPath.row]将是一个NSObject。除了这里,由于某种原因,你知道这是一个NSDictionary。所以你明确地转换它以避免编译器警告(这会告诉你“嗨,你正在为一个NSDictionary变量分配一个NSObject)
返回的对象是一个字典,但它为什么被铸造成字典? – JaHelia 2011-04-25 11:52:16
,因为编译器不知道哪个类型存储在数组中 – cweinberger 2011-04-25 11:52:55
这些行是预定义的字典,所以它知道在该数组中存储了什么数据类型! – JaHelia 2011-04-25 11:54:42