为什么连接字符串是如此超慢?

时间:2013-04-26 09:21:01

标签: objective-c performance nsstring

我正在使用NSXMLParser将.xml文件解析到我的项目中。到目前为止我没有问题。在我的.xml中是一个ImageURL,如下所示:“www.fooo.com/image.jpg”显示我需要的图像

urlString = [NSString stringWithFormat:@"http://%@", urlString];

这条线很慢。我在循环中使用它来编辑每个值。
例如

for (NSDictionary *locationDetails in parser.items)
{
    NSString *urlString = locationDetails[@"imageURL"];
    urlString = [NSString stringWithFormat:@"http://%@", urlString];
    NSURL *storeImageURL = [NSURL URLWithString:urlString];
    NSLog(@"img %@", urlString);
}

我的应用程序的加载时间约为3秒。在这条车道之后它增长到20秒!有没有办法做同样但更快?

1 个答案:

答案 0 :(得分:1)

您希望最小化发送的obj-c消息的数量以及创建和销毁的临时对象。为此,请尝试以下方法:

[NSURL initWitScheme:@"http" host:nil path:locationDetails[@"imageURL"]];