首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >字符串的硬编码是否会影响性能?

字符串的硬编码是否会影响性能?
EN

Stack Overflow用户
提问于 2013-05-08 13:09:34
回答 4查看 3.8K关注 0票数 18

每当我制作任何应用程序时,我总是硬编码字符串,而不是从XML的字符串资源中引用它。应用程序工作正常,但给出了使用@string资源的警告

示例按钮:

代码语言:javascript
复制
<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="click here" />

我的问题是,如果我这样做了,是否会影响我的应用程序的性能,或者它(@string资源)只是用于国际化。

EN

回答 4

Stack Overflow用户

发布于 2013-05-08 18:37:09

正如其他人所说,这是为了本地化,但对于性能,它取决于这些字符串每秒被查找的次数。我见过一个应用程序启动很慢的情况,堆栈采样显示50%的时间花费在字符串的资源查找上,查找字符串的原因是将它们显示在闪屏上,以便在应用程序启动时为用户提供一些查看内容!

票数 4
EN

Stack Overflow用户

发布于 2013-05-08 13:18:27

我不认为硬编码一个字符串会使你的程序运行得更慢。实际上,它将增强性能,因为不需要在R.java类中查找字符串。引用strings.xml中的字符串是最佳实践,原因有两个:

1-本地化2-如果您在多个地方使用相同的字符串,并且想要在所有地方编辑相同的字符串,则可以节省单独编辑所有硬编码字符串的开销。

票数 1
EN

Stack Overflow用户

发布于 2013-05-08 18:23:27

硬编码字符串不会直接影响性能。它影响了可维护性。

当你硬编码一个字符串的时候,如果你想把字符串"Click me“改成"add”或者其他什么,那么你需要搜索整个项目来改变字符串的使用位置和所有内容。所以更好的做法是始终关注strings.xml。:)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16433095

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档