java中的长字符串连接问题?
当我尝试用Java连接字符串时,如下所示:java中的长字符串连接问题?,java,Java,当我尝试用Java连接字符串时,如下所示: COsavedform = vtd + "," + stricode + "," + striname+ "," + striqty + "," + strirate + "," + striamt; 每个变量都包含一些字符串值,并返回正确的COsavedform值,但当我向同一COsavedform添加更多内容时,类似 COsavedform = vtd+","+ccode.getText()+","+striqty
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尝试了,但没有按照上述代码返回的方式进行转换我已再次编辑了答案,请尝试理解