这就是我的想法:
strings.xml上的字符串应该用于要使用的布局(xml)。静态常量用于代码(.java)。
当谈到最佳实践时,我想知道应该使用哪种方法。
如果你有很多字符串,它会有性能影响吗?
getString(...) vs MyConstants.THIS_IS_A_CONSTANT
答案 0 :(得分:41)
在这两种情况下,存在一些优点和缺点(我应该说优点和优点)。
正如你问题的评论中所说的那样。我只想补充一些小问题。
<强>位置:强>
对于本地化问题肯定字符串资源是最好的,因为您可以使用不同的语言文件来进行不同的语言环境。
<强>内存强>
由于字符串资源保存在xml文件中,因此存在一些额外的开销(不是主要的开销)
<强>性能:强>
从内存中读取总是比从文件中读取更快。虽然在这种情况下性能差异不显着
<强>修的:强>
这只是个人意见。对我来说,维护res文件比在类中维护字符串更容易。 string.xml对我来说更具可读性。
<强>最后:强>
所以我的建议是
将字符串资源用于将向用户显示的文本。
和
使用静态常量作为程序的内部目的 数据库名称,内部变量,意图过滤器名称等。