java中的长字符串连接问题?

java中的长字符串连接问题?,java,Java,当我尝试用Java连接字符串时,如下所示: COsavedform = vtd + "," + stricode + "," + striname+ "," + striqty + "," + strirate + "," + striamt; 每个变量都包含一些字符串值,并返回正确的COsavedform值,但当我向同一COsavedform添加更多内容时,类似 COsavedform = vtd+","+ccode.getText()+","+striqty

当我尝试用Java连接字符串时,如下所示:

COsavedform = vtd + "," + stricode + "," + striname+ "," 
            + striqty + "," + strirate + "," + striamt;
每个变量都包含一些字符串值,并返回正确的
COsavedform
值,但当我向同一
COsavedform
添加更多内容时,类似

COsavedform = vtd+","+ccode.getText()+","+striqty 
            + "," + strirate + "," + striamt+","+mode+",Customer";
模式
也是一个字符串变量。然后它只返回
COsavedform=“,“+mode+”,Customer“
,而不是全部内容。 问题是完整代码的一部分_--

你可以用+=

COsavedform += vtd+","+ccode.getText()+","+striqty + "," + strirate + "," + striamt+","+mode+",Customer";
但最好使用StringBuilder

StringBuilder stringBuilder = new StringBuilder();
    stringBuilder.append("str1").append("str2")... 
    COsavedform  = stringBuilder.toString();
因为使用concat()对内存更好

Java string concat()方法连接多个字符串。此方法在给定字符串的末尾追加指定字符串,并返回组合字符串。我们可以使用concat()方法连接多个字符串

评论后编辑的答案

Java中有4种连接字符串的方法

串联运算符(+) StringBuffer类 StringBuilder类 String.concat()函数

使用+运算符连接

String stringA= "Stack"; 
String stringB = "overflow"; 
使用StringBuilder

StringBuilder result  = new StringBuilder();
 result.append(stringA).append(",").append(stringB); 
 System.out.println(result.toString());
StringBuffer result = new StringBuffer(); 
sBuffer.append(stringA).append(",").append(stringB); 
System.out.println(result.toString());
使用StringBuffer

StringBuilder result  = new StringBuilder();
 result.append(stringA).append(",").append(stringB); 
 System.out.println(result.toString());
StringBuffer result = new StringBuffer(); 
sBuffer.append(stringA).append(",").append(stringB); 
System.out.println(result.toString());

这个问题贴出来后很难理解。请与您正在获得的输出和您希望获得的输出共享一些示例数据。有一个
“+
在您的第二个示例中,在客户之前,如果输入错误,StringBuilder的可读性更高,更不容易出错。尝试使用
StringBuilder
I使用生成的输出和预期的输出进行更新I尝试了,但没有按照上述代码返回的方式进行转换我已再次编辑了答案,请尝试理解