可能是我正在 split 头发,但我想知道以下情况:
String newString = a + b + c; //case 1
String newString = a.concat(b).concat(c); //case 2
StringBuilder newString = new StringBuilder(); //case 3
newString.append(a);
newString.append(b);
newString.append(c);
哪个最好用?
我的意思是无论如何。
读到这些,其他帖子说案例 3 并不是最佳性能,其他人认为案例 1 最终会出现在案例 3 中等等。
更具体一点。
例如,抛开一切不谈,如果您必须维护他的代码,哪种风格更适合从其他程序员那里看到?
或者您认为哪个编程效率更高?
或者你会认为更快等等。
我不知道该怎么表达。
一个答案,例如案例 3 可能更快,但绝大多数程序员更喜欢案例 1,因为它最易读,如果详细阐述也可以接受
最佳答案
案例1简洁,表达意图清晰,相当于案例3。
案例 2 效率较低,可读性也较差。
案例 3 几乎与案例 1 一样有效,但更长,可读性更差。
仅当您必须在循环中进行连接时,才更好地使用案例 3。否则,编译器会将案例 1 编译为案例 3(除了它使用 new StringBuilder(a)
构造 StringBuilder),这使得它比案例 3 更高效)。
关于java - 再次在字符串追加 vs concat vs +,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8962482/