当前位置: 技术问答>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?????
}
{
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不变。
System.out.println(s2); //应该是B,s2不变。
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。