当前位置: 技术问答>java相关
java 里有没有类似于 c 里面的引用参数(reference parameters)
来源: 互联网 发布时间:2015-05-28
本文导语: 如下程序: class Test { public static void main(String[] args) { int x = 3; int y = 4; mySwap(x,y); System.out.println(x); System.out.println(y); } static void mySwap(int x,int y) { int iTmp = x; x = y; y = iTmp; } } 怎么样在mySw...
如下程序:
class Test
{
public static void main(String[] args)
{
int x = 3;
int y = 4;
mySwap(x,y);
System.out.println(x);
System.out.println(y);
}
static void mySwap(int x,int y)
{
int iTmp = x;
x = y;
y = iTmp;
}
}
怎么样在mySwap方法中改变变量x、y的值,在c里可以通过mySwap(int &x,int &y)来实现,java里有没有类似的方法?
class Test
{
public static void main(String[] args)
{
int x = 3;
int y = 4;
mySwap(x,y);
System.out.println(x);
System.out.println(y);
}
static void mySwap(int x,int y)
{
int iTmp = x;
x = y;
y = iTmp;
}
}
怎么样在mySwap方法中改变变量x、y的值,在c里可以通过mySwap(int &x,int &y)来实现,java里有没有类似的方法?
|
你可以在class Test里面将x和y定义为静态的就行
如下:
public class Test{
public static int x = 3;
public static int y = 4;
public static void main(String[] args)
{
mySwap();
System.out.println(x);
System.out.println(y);
}
static void mySwap()
{
int i=Test.x;
Test.x=Test.y;
Test.y=i;
}
}
如下:
public class Test{
public static int x = 3;
public static int y = 4;
public static void main(String[] args)
{
mySwap();
System.out.println(x);
System.out.println(y);
}
static void mySwap()
{
int i=Test.x;
Test.x=Test.y;
Test.y=i;
}
}
|
还是建一个类把
class swap{
int x,y;
swap(int x,int y){
this.x=x;
this.y=y;
}
int getx(){return y;}
int gety(){return x;}
}
这样所有的int交换都可以了,使用就不用说了吧
建议:
1。学习java,要用对象的思维考虑问题
2。软件要考虑通用
以上仅供参考
class swap{
int x,y;
swap(int x,int y){
this.x=x;
this.y=y;
}
int getx(){return y;}
int gety(){return x;}
}
这样所有的int交换都可以了,使用就不用说了吧
建议:
1。学习java,要用对象的思维考虑问题
2。软件要考虑通用
以上仅供参考
|
呵呵呵,用数组吧,用数组它是参数传递。
个人意见,仅供参考。
个人意见,仅供参考。
|
试试使用Integer对象来当参数。
|
只能通过对象, java里的都是 pass by value。
|
用数组吧,不是很困难的。
个人意见,仅供参考。
个人意见,仅供参考。
|
用Integer类,只能。