zoukankan      html  css  js  c++  java
  • java的方法传参,最容易混淆的问题!!!

    参数传递

    参数传递,可以理解当我们要调用一个方法时,我们会把指定的数值,传递给方法中的参数,这样方法中的参数就拥有了这个指定的值,可以使用该值,在方法中运算了。这种传递方式,我们称为参数传递。

    • 在这里,定义方法时,参数列表中的变量,我们称为形式参数
    • 调用方法时,传入给方法的数值,我们称为实际参数

    我们看下面的两段代码,来明确下参数传递的过程:

    public class ArgumentsDemo01 {
    public static void main(String[] args) {
      int a=5;
      int b=10;
    change(a, b);//调用方法时,传入的数值称为实际参数
      System.out.println("a=" + a);
      System.out.println("b=" + b);
    }
    
    public static void change(int a, int b){//方法中指定的多个参数称为形式参数
      a=200;
      b=500;
      }
    }

    程序的运行结果如下:

     

    再看另一段代码

    public class ArgumentsDemo02 {
    public static void main(String[] args) {
      
    int[] arr = { 1, 2, 3 };   change(arr);// 调用方法时,传入的数值称为实际参数   for (int i = 0; i < arr.length; i++) {     System.out.println(arr[i]);     }   } public static void change(int[] arr) {// 方法中指定的多个参数称为形式参数   for (int i = 0; i < arr.length; i++) {     arr[i] *= 2;     }   } }

    程序的运行结果如下:

    总结:

      在方法传参的过程中的要分清楚传递的是基本数据类型还是引用数据类型.其中基本数据类型传递过程中传递的是数值本身,而引用数据类型传递的是地址值! 所以基本数据类型传递的时候的数据值不会发生改变,而引用数据类型数值发生改变.

  • 相关阅读:
    deepin-wine-tim 字体发虚
    windows&linux双系统时间相差8小时
    Linux 禁用 ipv6
    双系统win10更新后无法进入linux
    Failed to receive SOCKS4 connect request ack 解决
    zsh 使用通配符功能
    vux修改css样式的2种办法
    Ubuntu 16.04 安装OpenSSH7.4
    Nginx开启http2访问和gzip网页压缩功能
    vue开发环境和生产环境里面解决跨域的几种方法
  • 原文地址:https://www.cnblogs.com/alexzhang92/p/10089405.html
Copyright © 2011-2022 走看看