为了账号安全,请及时绑定邮箱和手机立即绑定

java中的数据交换

java中的数据交换

qq_阳光下的海风_0 2016-08-31 22:34:54
在c++中可以进行数据的引用交换,但是java中怎么做呢?或者说java中交换两个数的代码如下:public void swap(int num1,int num2){ int temp=num1; num1=num2; num2=temp; }可实际上num1与num2的值根本就没有交换,应该怎样写才可以真正交换num1和num2
查看完整描述

2 回答

已采纳
?
XSkyII

TA贡献5条经验 获得超3个赞

num1和num2作为全局变量存储起来就可以了,比如

int num1,num2;

public void swap(int num1,int num2){

int temp = num1;

this.num1=num2;

this.num2=temp;

}

public static void main(String[] args) {

T t = new T();

t.swap(3 , 4);

System.out.println("num1 = " + t.num1);

System.out.println("num2 = " + t.num2);

}


查看完整回答
1 反对 回复 2016-09-01
  • qq_阳光下的海风_0
    qq_阳光下的海风_0
    嗯嗯,不错嘛,竟然得到了我想要的效果,只是,还有一点不明白,我这样写为何不对? public class Swap2 { /* * 目的:写一个可以调用的用于两数据交换的函数 java */ public static void main(String[] args) { Integer x=3; Integer y=9; System.out.println("交换前"+"x="+x+",y="+y); swap2(x,y); System.out.println("交换后"+"x="+x+",y="+y); } private static void swap2(Integer a,Integer b) { Integer c=a; a=b; b=c; } }
?
香飘飘丶

TA贡献14条经验 获得超6个赞

JAVA不支持函数调用方式的数据的引用交换,不过可以在函数中重新给数进行赋值完成操作

查看完整回答
1 反对 回复 2016-08-31
  • 2 回答
  • 0 关注
  • 1751 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信