当前位置:  技术问答>java相关

为什么是A?????

    来源: 互联网  发布时间:2015-01-25

    本文导语:   static void m( StringBuffer a ,StringBuffer b )   {      a.append(b) ;      b = a ;   }      public static void main(String args[])   {      StringBuffer s1 = new StringBuffer("A") ;      StringBuffer s2 = new StringBuffer("B") ...

 static void m( StringBuffer a ,StringBuffer b ) 
 { 
    a.append(b) ; 
    b = a ; 
 } 
  
 public static void main(String args[]) 
 { 
    StringBuffer s1 = new StringBuffer("A") ; 
    StringBuffer s2 = new StringBuffer("B") ; 
    m( s1 ,s2 );
    System.out.println(s1);//AB
    System.out.println(s2); //A 为什么是A?????
 } 

|
System.out.println(s1);//AB 因为stringbuffer的append是改变地址内的值。
System.out.println(s2); //应该是B,s2不变。


    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。














站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3