黑马程序员技术交流社区

标题: StringBuffer为什么用append加不了整数? [打印本页]

作者: huang_bing_hua    时间: 2016-2-27 20:07
标题: StringBuffer为什么用append加不了整数?
  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

作者: liuyuttkx    时间: 2016-2-28 00:26
因为StringBuffer只能添加字符串,当添加其它类型时,需要转型为String类型的,如果需要添加数字,就用整数+"",即可.整数+""(空串),后就会转型为字符串
作者: huang_bing_hua    时间: 2016-2-28 11:13
实践证明是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





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2