java – 什么时候是StringBuffer / StringBuilder编译器没有隐含使用?

前端之家收集整理的这篇文章主要介绍了java – 什么时候是StringBuffer / StringBuilder编译器没有隐含使用?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我听说编译器(或者是JVM?)会自动使用StringBuilder进行一些字符串连接.什么时候明确声明一个?我不需要一个StringBuffer来线程安全.

谢谢.

解决方法

编译器将自动使用“”“进行任何字符串连接.

如果你想在一个循环中连接,你通常会明确地使用它.例如:

StringBuilder builder = new StringBuilder();
for (String name : names)
{
    builder.append(name);
    builder.append(",");
}
if (builder.length() > 0)
{
    builder.setLength(builder.length() - 2);
}
System.out.println("Names: " + builder);

另一种情况将是您想要通过多种方法构建一个字符串,或者可能限制建筑物的某些位置.基本上,如果您没有在单个语句(编译器可以帮助您)中构建字符串,则至少应考虑使用StringBuilder.

猜你在找的Java相关文章