我正在尝试在 Java 中复制 php 函数 implode()。
这是我做的:
private String implode(String delimiter, Map<String, String> map){
StringBuilder sb = new StringBuilder();
for(Entry<String, String> e : map.entrySet()){
sb.append(" "+delimiter+" ");
sb.append(" " + e.getKey() + " = '" + e.getValue() + "' ");
}
return sb.toString();
}
测试:
Map<String, String> myList = new HashMap<String, String>();
myList.put("address", "something1");
myList.put("last_name", "something2");
myList.put("first_name", "something3");
update_database("dummy", myList, "");
public void update_database(String table, Map<String, String> update_list, String condition){
String query = "UPDATE " + table + " SET ";
query += implode(",", update_list) + " " + condition;
System.out.println(query);
}
输出:
更新虚拟 SET,地址 = 'something',last_name = 'something2',first_name = 'something3'
如果您以前使用过 mysql,您就会知道它不是一个有效的查询,因为字符串查询以“,”开头。
如何格式化我的字符串以获得正确的查询?