例如,要扭转一个字符串,将有两种方式:的Java:两种方式之间Differrent当使用新的对象
第一:
String a = "StackOverFlow";
a = new StringBuffer(a).reverse().toString();
和第二个是:
String a = "StackOverFlow";
StringBuffer b = new StringBuffer(a);
a = b.reverse().toString();
在上面的代码中,我有两个问题:
1)在第一个代码中,java是否创建了一个“虚拟对象”StringBuffer
在内存之前做reverse
并更改为String
。 2)在上面的代码中,首先会比第二个更优化,因为它使GC更有效地工作? (这是我要问的一个主要问题)
谢谢:)
通常代码清晰度比性能更重要,除非你知道你有问题。 – 2012-03-09 15:34:46