android - strings.xml vs static constants

时间:2013-04-23 02:47:03

标签: android string performance constants

这就是我的想法:

strings.xml上的字符串应该用于要使用的布局(xml)。静态常量用于代码(.java)。

当谈到最佳实践时,我想知道应该使用哪种方法。

如果你有很多字符串,它会有性能影响吗?

getString(...) vs MyConstants.THIS_IS_A_CONSTANT

1 个答案:

答案 0 :(得分:41)

在这两种情况下,存在一些优点和缺点(我应该说优点和优点)。

正如你问题的评论中所说的那样。我只想补充一些小问题。

<强>位置:

对于本地化问题肯定字符串资源是最好的,因为您可以使用不同的语言文件来进行不同的语言环境。

<强>内存

由于字符串资源保存在xml文件中,因此存在一些额外的开销(不是主要的开销)

<强>性能:

从内存中读取总是比从文件中读取更快。虽然在这种情况下性能差异不显着

<强>修的:

这只是个人意见。对我来说,维护res文件比在类中维护字符串更容易。 string.xml对我来说更具可读性。

<强>最后:

所以我的建议是

  

将字符串资源用于将向用户显示的文本。

  

使用静态常量作为程序的内部目的   数据库名称,内部变量,意图过滤器名称等。