A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  1. public class ArrayDemo {
  2.         public static void main(String[] args) {
  3.                 StringBuffer sb = new StringBuffer();
  4.                
  5.                 sb.append(10);
  6.                
  7.                
  8.                
  9.                
  10.                 System.out.println(sb);
  11.        
  12.                
  13.         }

  14. }
复制代码
报错内容如图

捕获.PNG (48.63 KB, 下载次数: 13)

捕获.PNG

2 个回复

倒序浏览
因为StringBuffer只能添加字符串,当添加其它类型时,需要转型为String类型的,如果需要添加数字,就用整数+"",即可.整数+""(空串),后就会转型为字符串
回复 使用道具 举报
实践证明是jdk版本问题!!!
原来我用的是jdk8版本,不能直接sb.append(10),
而且在StringBuffer的有参构造赋值操作里也不能直接写成
StringBuffer sb = new StringBuffer(s);eclipse提醒多写一行代码public StringBuffer (String str){},
我觉得太麻烦了,于是卸载,装了jdk7,问题就解决了。
sb.append(10),StringBuffer sb = new StringBuffer(s)这么写都不会报错。

捕获1.PNG (101.75 KB, 下载次数: 10)

捕获1.PNG
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马