StringBuffer为什么创建时输入int类型append后不显示前面的只显示后面的值

StringBuffer s = new StringBuffer(123);
s.append(456);
为什么输出后只显示456前面的123没有了,但是如果是字符串123又能输出123456

你输入数字,表示先建立一个长度是123的StringBuffer ,而不是把“123”作为初始的字符存入

new StringBuffer(123)这个方法中的入参123是被作为预设容量值去使用的。
如果你是想创建对象时设置初始值,那你需要写成这样new StringBuffer("123")