拉比小熊 2020-10-26 14:54 采纳率: 25%
浏览 58
已采纳

Java方法调用问题(求大佬们指点一下问题所在)

图片说明

调用了方法但是a和b的值没有得到改变,后面尝试将方法返回值类型改int,然后return a,但是输出依然没有改变。想请教下各位大佬问题出在哪里?要怎样调用方法才能使a,b的值得到改变?谢谢了。

  • 写回答

2条回答 默认 最新

  • Happywzy~ 2020-10-26 15:30
    关注

    这里涉及到一个问题:参数的值传递和引用传递,由于int是基本类型,貌似只能进行值传递,所以才有你的问题出现。
    可以创建一个类,就可以进行引用传递,如下示例

    public class Test10 {
        public static void main(String[] args) {
            INT a = new INT(1);
            INT b = new INT(2);
            exchange(a, b);
            System.out.println(a.value);
            System.out.println(b.value);
        }
    
        public static void exchange(INT a, INT b) {
            a.value = a.value + b.value;
            b.value = a.value + b.value;
        }
    
        static class INT{
            int value;
    
            public INT(int value) {
                this.value = value;
            }
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 鼠标右键,撤销删除 复制 移动,要怎样删除
  • ¥15 使用MATLAB进行余弦相似度计算加速
  • ¥15 服务器安装php5.6版本
  • ¥15 我想用51单片机和数码管做一个从0开始的计数表 我写了一串代码 但是放到单片机里面数码管只闪烁一下然后熄灭
  • ¥20 系统工程中,状态空间模型中状态方程的应用。请猛男来完整讲一下下面所有问题
  • ¥15 我想在WPF的Model Code中获取ViewModel Code中的一个参数
  • ¥15 arcgis处理土地利用道路 建筑 林地分类
  • ¥20 使用visual studio 工具用C++语音,调用openslsx库读取excel文件的sheet问题
  • ¥100 寻会做云闪付tn转h5支付链接的技术
  • ¥15 DockerSwarm跨节点无法访问问题