【发布时间】:2014-10-21 11:12:55
【问题描述】:
我想使用 StringBuffer 而不是将字符串与结果连接起来。我使用此代码转换了 while 循环,但最后一个 if 语句遇到了问题。我能做些什么来转换它?
原码:
result = statement.executeQuery(sql);
String string = "";
while (result.next()) {
string += result.getString(("Hello") + ",");
}
if (string!= null && !string.isEmpty()) {
string= string.substring(0, string.length() - 1);
}
我的尝试:
result = statement.executeQuery(sql);
StringBuffer string = new StringBuffer("");
while (result.next()) {
string.append(("Hello") + ",")
}
if {
--- CODE HERE ---
}
有什么帮助吗?
【问题讨论】:
-
你想做什么?
-
请注意,
(("Hello") + ",")将评估为"Hello," -
避免使用 "+=" 连接字符串,而是使用 StringBuffer 连接。我知道如何像上面的尝试一样附加它,我唯一的问题是如何将底部的 if 语句转换为使用 StringBuffer 而不是 String?
-
如果您需要线程安全,则使用 StringBuffer。也许考虑使用 StringBuilder。此外,“但我在最后一个 if 语句上遇到了问题。”并没有告诉我们很多关于您面临的问题。
-
deleteCharAt?如有疑问,请查看类的 javadoc。您很有可能会看到自己需要什么。
标签: java string if-statement append stringbuffer