• Java基础——方法传值(基本数据类型 VS 引用数据类型)


    总结——基本数据类型传值,引用类型传地址

    在Java语言中,不管参数的类型是引用类型还是基本数据类型,数据参数和形式参数进行值传递的方式只有一种——参数值的值 复制一份 赋值给形式参数

    所以,实参的值,其实就有两份,调用方法中一份,被调用方法中一份

    1、当方法的参数是基本数据类型的参数时,参数有两份,同时参数对应的数据的值也有两份

    2、当方法的参数是引用类型时,参数值有两份,但是两个数组类型引用变量,对应的值(数组),只有一个

    public class Demo1 {
    
      public static void main(String[] args) {
        //int a = 10;
        //int b = 20;
        //System.out.println("a:" + a + ",b:" + b);
        //change(a, b);
        //System.out.println("a:" + a + ",b:" + b);
    
        //--------------------------------------------------------------------
    
        int[] arr = {1, 2, 3, 4, 5};
        change(arr);
        System.out.println(arr[1]);
      }
    
      public static void change(int a, int b) {
        System.out.println("change a:" + a + ",b:" + b);
        a = b; // a = b
        b = a + b; //b = b + b = 2b
        System.out.println("change a:" + a + ",b:" + b);
      }
    
      public static void change(int[] arr) {
        for (int x = 0; x < arr.length; x++) {
          if (arr[x] % 2 == 0) {
            arr[x] *= 2;
          }
        }
      }
    }
    
  • 相关阅读:
    vsftpd下错误之:500 OOPS
    material mem
    如何查看core文件
    java 开发工具使用
    Java计算几何图形的面积
    Java实现经理与员工的差异
    Java适配器模式的简单应用
    Java实现策略模式的简单应用
    Java单例模式的应用
    Java求解汉诺塔问题
  • 原文地址:https://www.cnblogs.com/lcpp/p/13096851.html
Copyright © 2020-2023  润新知