使用对象名作为参数呀,这等同于c中的传递地址。看下面的 class paremter() { public int num; public String str; public ...//定义更多的要传递的参数 }class test { public static void modify(paremter out) { out.num++; out.str="Be updated!"; //... } public static void main(String args[]) { paremter par = new paremter(); modify(par); System.out.println(par.num); //... } }
其中 String 传入时 java 完成了 clone,所以对于 String 类型的方法内外的对象是不同的。
假如要避免对象被修改,可以实现该类的 clone 方法拷贝构造一个新对象。
{
if(a!=null)
a[0]=222;
if(b!=null)
b[0]="adfsf";
return 234;
}
需要将一个数千行的VC代码转换为Java代码,其中有一个方法,被调用了四百多回,我希望找到一个不修改调用接口的方法,也能实现通过参数得到返回值!如有方法,感激不尽!
class paremter()
{
public int num;
public String str;
public ...//定义更多的要传递的参数
}class test
{
public static void modify(paremter out)
{
out.num++;
out.str="Be updated!";
//...
}
public static void main(String args[])
{
paremter par = new paremter();
modify(par);
System.out.println(par.num);
//...
}
}
否则修改起来太麻烦,目前第一个VC代码中就至少有400多处调用,以后还要将整个项目全部转换为JAVA,希望能得到不需要改动参数类型的方法!