使用哪一个 - 串联中的String或StringBuffer

Ana*_*and 0 java string object stringbuffer

我在项目中看到了java代码,它从各种参数构造一个文件名.java代码是这样的

String file = null;
String fileDirSeperator = System.getProperty("file.separator");
String pwd = System.getProperty("user.dir");
file = pwd + fileDirSeperator + "properties" + fileDirSeperator + folder_name + file_name;
Run Code Online (Sandbox Code Playgroud)

我想知道我是否应该StringBuffer代替你String.我知道将任何内容附加到String会创建新对象,所以我想我应该StringBuffer.

我可以知道你的建议吗?

也,

 file = pwd + fileDirSeperator + "properties" + fileDirSeperator + folder_name + file_name;
Run Code Online (Sandbox Code Playgroud)

在上面的文件名构造中,是否会创建6个对象(每个变量一个)?

Kay*_*man 6

这是无关紧要的.除非你在循环中执行此操作,否则运行数千次,性能无关紧要.该String级联语法将是最直接的,然后.

如果性能是串联问题,请使用StringBuilder.