我想删除Java字符串的最后一个字符 . 常见的解决方案是这样做:

String sql = "update table set field_one = :value1, field_two = :value2,";
sql = sql.substring(0, sql.length() - 1);

但是,这种方法真的效率不高吗? Java字符串是不可变的,这意味着上面的子字符串操作会导致JVM分配一个新字符串,该字符串只比旧字符串短一个字符 . 如果你有一个长达数千个字符的字符串,这不会真的效率低下吗?

在Java中删除String的最后一个字符的更有效方法是什么?