Fred_k 2015-11-01 11:56 采纳率: 0%
浏览 1871
已结题

java中数据交换的问题

晚上在写程序的时候需要用到交换数据,所以我就主类里面写了一个swap,
但是在调用之后发现数据没有交换成功,可是在swap里面数据的确交换成功了呀,
不知道是什么原因,下面贴出代码:

    public static void main(String[] args){
        int a,b;
        a = 4;
        b = 5;
        swap(a,b);
        System.out.println(a+","+b);
    } 
     public static void swap(int a, int b){
        int temp = a;
        a = b;
        b = temp;
     }

麻烦各位看看到底是什么问题啊,是因为java中的传递问题导致的吗?实在是想不通。

  • 写回答

7条回答 默认 最新

  • Simon Dennis 2015-11-01 13:15
    关注
    public static void main(String[] args){
        int a,b;
        a = 4;
        b = 5;
        swap(a,b);
        System.out.println(a+","+b);
    } 
        光看上面这段代码,打印出的a,b当然还是原来的值,他们在这里是局部变量,值根本就没有变么,swap只是去调用了一下方法,对数据交换没有任何返回,必然得不到想要的结果。
        看看这个帖子http://bbs.csdn.net/topics/300151805
    
    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog