+ -
当前位置:首页 → 问答吧 → 为什么他们的输出结果是before==strArry[0]=Hello strarry[1]=Word after==strArry[0]=Word str

为什么他们的输出结果是before==strArry[0]=Hello strarry[1]=Word after==strArry[0]=Word str

时间:2011-09-03

来源:互联网


public class Utill 
{
public static void swap(int a,int b)
{
int temp;
temp=a;
a=b;
b=temp;
}
public static void swap(String a,String b)
{
String temp;
temp=a;
a=b;
b=temp;
}
public static void swaparry(Object a[],int i,int j)
{
if(i!=j)
{
Object temp=a[i];
a[i]=a[j];
a[j]=temp;
}

}
public static void main(String args[])
{
int a=100;
int b=200;
System.out.println("before==="+" "+"a="+a+" "+"b="+b);
Utill.swap(a,b);
System.out.println("after==="+" "+"a="+a+" "+"b="+b);
String aStr="Hello";
String bstr="Word";
System.out.println("before=="+" "+"astr="+aStr+" "+"bStr="+bstr);
Utill.swap(aStr,bstr);
System.out.println("after=="+" "+"astr="+aStr+" "+"bStr="+bstr);
String []strArry={"Hello","Word"};
System.out.println("before=="+"strArry[0]="+strArry[0]+" "+"strarry[1]="+strArry[1]);
Utill.swaparry(strArry,0,1);
System.out.println("after=="+"strArry[0]="+strArry[0]+" "+"strarry[1]="+strArry[1]);


}
}
输出结果:
before=== a=100 b=200
after=== a=100 b=200
before== astr=Hello bStr=Word
after== astr=Hello bStr=Word
before==strArry[0]=Hello strarry[1]=Word
after==strArry[0]=Word strarry[1]=Hello

作者: huiloveyan   发布时间: 2011-09-03

你写的这些static方法全部无法起到作用,你在static方法里面执行的值互换都只能在局部作用域内起作用

作者: ioe_gaoyong   发布时间: 2011-09-03

只有对数组引用那个起到作用

作者: ioe_gaoyong   发布时间: 2011-09-03

热门下载

更多