gpt4 book ai didi

java - 帮助调试字符串连接代码

转载 作者:行者123 更新时间:2023-11-30 07:37:26 25 4
gpt4 key购买 nike

我有一个连接字符串的代码。但是,由于某种原因,最终的字符串不是所需字符串的组合。考虑以下代码:

//cusEmail is of type String[]
String toList = "";
for(i=0; i < cusEmail.length - 1; i++) {
toList.concat(cusEmail[i]);
toList.concat("; ");
System.out.println(cusEmail[i]);
}
toList.concat(cusEmail[i]);
System.out.println(toList);

第一个 sout 语句正确显示了 cusEmail[i] 中的字符串。但是,一旦连接起来,第二个 sout 就会显示空白/空。这有什么原因吗?我是否正确连接了它?

最佳答案

字符串是不可变的。这意味着 toList.concat(..) 不会更改 toList。相反,它返回一个新的字符串:

 toList = toList.concat(..);

但是,更建议使用 StringBuilder.append(..):

StringBuilder toList = new StringBuilder();
for (...) {
sb.append(emails[i]);
sb.append("; ");
}
...
return sb.toString();

更好的(就代码重用而言)方法是使用实​​用程序来连接带分隔符的字符串。喜欢ArrayUtils.join(emailsArray, "; "); (来自 commons-lang)

关于java - 帮助调试字符串连接代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2652287/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com