不同类型的方法传递
创始人
2025-01-09 07:30:15
0

在Java中,有多种不同的方法可以进行参数传递。下面是一些常见的方法传递的示例代码:

  1. 值传递:

    public static void main(String[] args) {
        int num = 5;
        System.out.println("Before calling method: " + num);
        changeValue(num);
        System.out.println("After calling method: " + num);
    }
    
    public static void changeValue(int value) {
        value = 10;
        System.out.println("Inside method: " + value);
    }
    

    输出:

    Before calling method: 5
    Inside method: 10
    After calling method: 5
    

    在值传递中,参数的值被复制到方法中,对参数的修改不会影响原始值。

  2. 引用传递:

    public static void main(String[] args) {
        int[] array = {1, 2, 3};
        System.out.println("Before calling method: " + Arrays.toString(array));
        changeArray(array);
        System.out.println("After calling method: " + Arrays.toString(array));
    }
    
    public static void changeArray(int[] arr) {
        arr[0] = 10;
        System.out.println("Inside method: " + Arrays.toString(arr));
    }
    

    输出:

    Before calling method: [1, 2, 3]
    Inside method: [10, 2, 3]
    After calling method: [10, 2, 3]
    

    在引用传递中,参数的引用被传递到方法中,对参数的修改会影响原始值。

  3. 对象传递:

    public class MyClass {
        private int value;
        
        public MyClass(int value) {
            this.value = value;
        }
        
        public int getValue() {
            return value;
        }
        
        public void setValue(int value) {
            this.value = value;
        }
    }
    
    public static void main(String[] args) {
        MyClass obj = new MyClass(5);
        System.out.println("Before calling method: " + obj.getValue());
        changeObject(obj);
        System.out.println("After calling method: " + obj.getValue());
    }
    
    public static void changeObject(MyClass obj) {
        obj.setValue(10);
        System.out.println("Inside method: " + obj.getValue());
    }
    

    输出:

    Before calling method: 5
    Inside method: 10
    After calling method: 10
    

    在对象传递中,参数的引用被传递到方法中,对参数的修改会影响原始对象的状态。

相关内容

热门资讯

重大消息!蜀山四川vip破解,... 重大消息!蜀山四川vip破解,微乐江西小程序辅助器,详细工具(有挂透视)1、操作简单,无需微乐江西小...
六分钟了解!518互游辅助器下... 六分钟了解!518互游辅助器下载,顺兴茶楼开挂,详细app(有挂存在)1、518互游辅助器下载免费脚...
必备攻略!微信小游戏万能修改器... 必备攻略!微信小游戏万能修改器,朋友局app辅助器下载,详细app(真是有挂)该软件可以轻松地帮助玩...
一分钟揭秘!微信微乐游戏辅助脚... 一分钟揭秘!微信微乐游戏辅助脚本,山城九九辅助,详细软件(有挂解密)1、金币登录送、破产送、升级送、...
今日焦点!玖玖互娱辅助工具,佛... 今日焦点!玖玖互娱辅助工具,佛手大菠萝破解版ios,详细攻略(有挂分享)1、下载好佛手大菠萝破解版i...
一分钟揭秘!奇迹免费脚本辅助工... 一分钟揭秘!奇迹免费脚本辅助工具,腾讯欢乐卡五星辅助器,详细脚本(有挂详情)1、腾讯欢乐卡五星辅助器...
研究成果!雀友会广东潮汕bus... 研究成果!雀友会广东潮汕bus,九哥玩挂,详细插件(有挂头条)1、完成雀友会广东潮汕bus有辅助插件...
热门推荐!上饶辅助设备出租,河... 热门推荐!上饶辅助设备出租,河南微乐小程序辅助器免费,详细插件(有挂详情)1、河南微乐小程序辅助器免...
终于清楚!多乐游戏脚本,微信中... 终于清楚!多乐游戏脚本,微信中至有辅助吗,详细攻略(有挂方法)1、任何微信中至有辅助吗透视是真的假的...
分享个大家!德州扑克游戏辅助器... 分享个大家!德州扑克游戏辅助器,凑一桌游戏软件下载辅助,详细器(有挂细节)1、超多福利:超高返利,海...