zoukankan      html  css  js  c++  java
  • java中的值传递和引用传递

    先弄清楚两者的概念

    按值传递:意味着当将一个参数传递给一个函数时,函数接收的是原始值的一个副本。因此,如果函数修改了该参数,仅改变副本,而原始值保持不变。

    按引用传递:意味着当将一个参数传递给一个函数时,函数接收的是原始值的内存地址,而不是值的副本。因此,如果函数修改了该参数,调用代码中的原始值也随之改变。

    函数传参:

    1、原始数据类型是按值传递的。

    public class test {
    
        public static void main(String[] args){
    
            int i=1;
            change(i);
            System.out.println(i);
        }
    
        private static void change(int var) {
            // TODO Auto-generated method stub
            var=-var;
        }
    }

     输出:1

    2、对象就是传引用

    public class test {
    
        public static void main(String[] args){
    
            Person person=new Person();
            person.i=1;
            change(person);
            System.out.println(person.i);
        }
    
        private static void change(Person tmp) {
            // TODO Auto-generated method stub
            tmp.i=100;
        }
    }

    输出:100

     

    String类型因为没有提供自身修改的函数,每次操作都是新生成一个String对象,所以要特殊对待。可以认为是传值。

    Done!

  • 相关阅读:
    utuntu sever1804显示中文putty可以输入中文
    windows上用putty从linux上下载文件
    2020Ubuntu server1804最新安装后的配置
    2020年ubuntu sever1804 安装和配置
    堡垒机
    防病毒网关
    审计系统
    常用网站
    AWVS的使用1
    windows Server 监控远程桌面连接信息
  • 原文地址:https://www.cnblogs.com/xingyyy/p/4236291.html
Copyright © 2011-2022 走看看