2010-05-23 178 views
0

我必须在我的应用程序中管理XML文档和字符串。效率问题

就效率和内存使用情况而言,像ArrayList这样的集合会比String[]贵得多吗?另外,我可以将内容存储为常规字符串或XML。使用XML也更昂贵? (当我说昂贵的时候,我指的是系统资源的使用。)

那些字符串将包括xml的..我要做的就是将它们传递给另一个appz,那些appz将处理它们..仅此而已。 .ArrayList将动态地保存大约20个字符串..每个病态都需要'为每个'它,获取字符串的内容并将其发送到另一个应用程序。

如果有差异,它们有意义吗?

谢谢, 雷。

+1

*你打算持有多少条琴弦? *它们会静态吗? 更好地解释你想要达到的目标。 – Macarse 2010-05-23 12:40:12

+0

我编辑了这个问题,谢谢 – rayman 2010-05-24 06:27:11

回答

0

这很大程度上取决于您对字符串所做的操作以及您如何使用它们。但是,从我最近使用ArrayList的字符串进行快速重复处理的经验来看,我发现String []数组的速度是我目的的8-10倍(读取字符串并在while循环中进行比较)。

它看起来很奇怪(而且因为我想要动态大小而感到烦恼),但执行时间本身就说明了这一点。

就像我说的,这是来自我最近的经历,我只是一般。也许如果您提供了更多关于您想要实现的信息,我们可能会给您更具体的建议。

+0

我编辑了这个问题,谢谢 – rayman 2010-05-24 06:27:58

+0

在这种情况下,您的使用与我的非常相似,我强烈建议使用String [],如上所述。我的用法是循环for-each,并且我发现ArrayList实现的速度非常慢。你说你会有20个字符串,所以它不会对应用程序产生太大的影响,但是如果你事先知道了这个大小或者会循环多次,最好用String []来安全地播放它,尤其是因为这个数字可能会改变 – HXCaine 2010-05-24 10:05:02

+0

是的,但它更容易从ArrayList中检索/添加/删除,然后String [] ...这就是为什么我想知道它可能会如何不同。 – rayman 2010-05-25 13:27:47