我能用下面两条语句具体解释一下内存和运行时开销吗?
>
String CONST=字符串常量;StringBuilder sb1=new StringBuilder();
sb1.append(CONST);
StringBuilder sb2=新的StringBuilder()
sb2。附加(“字符串常量”);
second是否创建字符串对象和外接程序stringpool?是否有任何场景(也考虑许多字符串附录)可以证明其中一个比另一个更好?
关于运行时开销,对这两种方法进行模拟得到了几乎相同的结果。
我的测试进行了1000000000次迭代,运行时间为:
所以在性能上绝对没有明显的差异。
因此,正如@LouisWasserman在他们的回答中所说,只要使用保持代码干净易读的代码。
这两个版本在内存或运行时开销方面没有差异。
使用更易于阅读或维护的选项。如果在许多地方重复使用同一个字符串常量,该常量很长,或者可能会更改,那么拉出一个常量可能是合适的。
问题内容: 在每篇文章中,“如何向JEditorPane附加字符串?”问题的答案。就像 我已经试过了: 结果,我得到了“终止时间:1000”,而没有“进程的分布:” 为什么会发生这种情况??? 问题答案: 我怀疑这是附加文本的推荐方法。这意味着每次更改某些文本时,都需要重新解析整个文档。人们之所以这样做,是因为他们不了解如何使用JEditorPane。包括我在内。 我更喜欢使用JTextPane然
append key value 返回新字符串值的长度。
问题内容: 在主要: 我得到以下输出: 但是,当我在应用程序中实现相同的操作时,将得到以下输出: 注意: 在我的加密字符串上追加了新行。 应用代码: 我如何删除多余的新行。为什么会这样,请帮助我 是什么原因? 问题答案: 我回答这个问题可能很晚,但是遇到了同样的问题。其实问题就在这里 更改该行以使其看起来像这样: 默认情况下,Android Base64 util在编码字符串的末尾添加换行符。Ba
编辑:我已经删除了用于out.write的for循环,它不是必需的。我在使用字符串数组时使用过它。
下面是我的代码。我想用逗号分隔的列表追加ip:port字符串。 我想要这种格式的输出: