Discuss / Java / StringBuilder实现字符串拼接

StringBuilder实现字符串拼接

Topic source
public class Main {
    public static void main(String[] args) {
        String[] fields = { "name", "position", "salary" };
        String table = "employee";
        String insert = buildInsertSql(table, fields);
        System.out.println(insert);
        System.out.println(
                "INSERT INTO employee (name, position, salary) VALUES (?, ?, ?)".equals(insert) ? "测试成功" : "测试失败");
    }
    static String buildInsertSql(String table, String[] fields) {
        var S = new StringBuilder(1024);
        S.append("INSERT INTO ").append(table + " (");
        for (int i = 0; i < fields.length; i++) {
            if (i == 0) {
                S.append(fields[i]);
            } else {
                S.append(", " + fields[i]);
            }
        }
        S.append(") VALUES (?, ?, ?)");
        String s = S.toString();
        return s;
    }
}


     下一节的写法更简单哇!

   S.append("INSERT INTO ").append(table + " (");
        for(String field : fields) {
            S.append(field).append(", ");
        }
        S.delete(S.length() - 2, S.length());

  • 1

Reply