我使用一组常量字符串进行文本匿名化。其中一个字符串应该类似于“[XX状态下的城镇]”,其中XX将在稍后用实际状态替换(字符串的其余部分保持原样)。
我的问题是:有没有办法“优雅地”执行此操作(本着SQL PreparedStatement的精神)? 或者我应该只是放XX然后再做myString.replace(“XX”,“someState”),在这种情况下,字符串不再是常量:(
编辑:刚才意识到String.replace返回一个新的String,所以myString仍然是这个方法的常量。
答案 0 :(得分:6)
如果您使用GC.SuppressFinalize(this)
代替%s
,则可以使用String.format。
答案 1 :(得分:0)
您可以使用Formatter类
方便地从系统出来
System.out.format("My name is '%s' and i am %d years old. My party will be at '%s'.", name, years, time);