使用Dalvik VM进行快速字符串比较?

时间:2011-08-30 08:41:10

标签: android xml-parsing string-comparison dalvik

我在Android中使用SAXParser解析一个大的XML文件,并想知道是否有更快的方法进行字符串比较?我听说有传言说你可以使用Dalvik VM做一些能节省内存的东西,从而加快速度,但我找不到任何在线内容。

有人能指出我正确的方向要么使用Dalvik加速我的解析,要么更好,更快的方式进行XML解析?

2 个答案:

答案 0 :(得分:1)

我会使用goold old String.compareTo(String)

现在可能存在更快的方式,但compareTo()是标准方式,因此是唯一有利于Android未来优化的方法。因此,最终优化比较可能会比标准方法慢。

这与成员字段访问时间非常相似。在Android的开头,它做得更快

final AnyClass local = mMyMember;
local.something();

大于

mMyMember.something();

但现在已经不是这样了。

答案 1 :(得分:1)

String的compareTo()方法在dalvik内部实现,是一个特殊的手工编写的程序集例程。您不太可能在字符串比较中击败其性能

如果这是您正在下载的xml文件,我不知道有任何方法可以加快您的解析时间。但是,如果你可以将它作为资源包含在apk中(在res / xml文件夹中),那么当你构建apk时它将被编译成Android的二进制xml格式,你可以通过XmlResourceParser访问它,这应该是显着的更快