我对 java 中的 StringBuilder 感到困惑。我的代码在这里:
StringBuilder cmdB = new StringBuilder(
"INSERT IGNORE INTO Query ( context, category, generality, freshness, TokenCount, type) VALUES ");
for (int i = 0; i < querydata.size(); i++) {
if (i == 0)
cmdB.append("('");
else
cmdB.append(",('");
cmdB.append(querydata.get(i).getContext() + "',"
+ querydata.get(i).getCategory() + ","
+ querydata.get(i).getGenerality() + ","
+ querydata.get(i).getFreshness() + ","
+ querydata.get(i).getTokenCount() + ","
+ querydata.get(i).getType());
cmdB.append(")");
}
cmdB.append(";");
我有 Mysql 作为数据库,想创建插入 1000 行的字符串。querydata.get(i).getContext() 返回 String 并包含英语(left ro right)和波斯语(从右到左的语言)。
当我的 querydata.get(i).getContext() 返回“دانلود کرک بازی ghost recon”时,我的 Stringbuilder 将其合并。我的结果如下所示。
INSERT IGNORE INTO Query ( context, category, generality, freshness, TokenCount, type) VALUES ('پخش زنده فوتبال',2,1.0,0.0,2,1),('عکسهای جشنواره فیلم فجر',2,1.0,0.0, 2,1),('نتایج لیگ برتر',2,1.0,0.0,2,1),('دانلود کرک بازی ghost recon',2,1.0,0.0,2,1)。