黑马程序员技术交流社区

标题: 小问题 output+="1" 这样的算法有点混!! [打印本页]

作者: 余松霖    时间: 2011-12-16 10:21
标题: 小问题 output+="1" 这样的算法有点混!!
本帖最后由 余松霖 于 2011-12-16 11:04 编辑
  1. {
  2.         public static String output="";
  3.         public static void foo(int i)
  4.         {
  5.                 try
  6.                 {
  7.                         if(i==1)
  8.                                 throw new Exception();        
  9.                         output+="1";
  10.                 }
  11.                 catch(Exception e)
  12.                 {
  13.                         output+="2";
  14.                         return;
  15.                 }
  16.                 finally
  17.                 {
  18.                         output+="3";
  19.                 }
  20.                 output+="4";
  21.         }
  22.         public static void main(String args[])
  23.         {
  24.                 foo(0);
  25.                 System.out.println(output);//134
  26.                 foo(1);
  27.                 System.out.println(output); //13423
  28.         }
  29. }
复制代码
如题   output+="1"  这样的算法有点昏!!  求解释下!!
作者: songxingchao    时间: 2011-12-16 10:32
output+="1"  相当于 output = output + "1" , 这里 output 和 “1” 都是字符串, 相当于在output后面连接上一个1 , 比如原先output = "1"  执行output = output + "1"  之后output就等于 11
作者: 杨扬    时间: 2011-12-16 10:51
实际上是字符串的一个拼接.
作者: 刘基军    时间: 2011-12-16 10:59
1.output+="1"  等价于 output = output + "1";
2.当“+”两边,出现字符串后,“+”的功能,由相加变成字符串连接 。
作者: 余松霖    时间: 2011-12-16 11:04
明白.谢谢各位!




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