java小技巧-生成重复的字符

 今天碰到个需求,根据字段个数,动态生成sql的占位符,如下:

    public static void main(String[] args) {
        System.out.println(String.join(",",Collections.nCopies(10,"?")));
    }

显示结果:

来个实际的例子:

public class Test {

    public static void main(String[] args) {
        String tableName = "user";
        String fieldNames = "name,age,weight";
        
        System.out.println(getInsertSqlString(tableName,fieldNames));
    }
    
    private static String getInsertSqlString(String tableName,String fieldNames){
        int size = fieldNames.split(",").length;
        StringBuffer sb = new StringBuffer("");
        sb.append("insert into ").append(tableName).append("(").append(fieldNames).append(")")
        .append("values(").append(String.join(",",Collections.nCopies(size,"?"))).append(");");
        return sb.toString();
    }

}

输入参数tableName, fieldNames, 显示如下:

原文地址:https://www.cnblogs.com/30go/p/9051752.html