[javaSE] 变量的传值与传址

变量:就是将不确定的数据进行存储。也就是需要在内存中开辟一个空间

这个空间需要一个名称,这个名称就是变量名

 

基本数据类型:byteshortint,longdoublefloatcharboolean

引用数据类型:类(Class),接口(interface),集合

 

传值就是把这个变量复制一份

传址就是还是同一个对象

基本数据类型一般都是传值,引用数据类型一般是传地址

import java.util.ArrayList;
import java.util.List;


public class VariableDemo {

    /**
     * @param args
     */
    public static void main(String[] args) {
        //初始
        int a=1;
        List<String> arr=new ArrayList<String>();
        arr.add("taoshihan1");
        //测试
        makeChange(a, arr);
        //输出
        System.out.println(a);//输出 1
        System.out.println(arr);//输出 [taoshihan1, taoshihan2]
    }
    /**
     * 传值和传地址测试
     * @param a
     * @param arr
     */
    public static void makeChange(int a,List<String> arr){
        a=4;
        arr.add("taoshihan2");
    }

}

 

 

PHP中函数传参一般传值,加上&这个符号后就变成了传地址

 

<?php
class VariableDemo{
    public static function main(){
        $a=1;
        $arr=array("taoshihan1");
        VariableDemo::makeChange($a,$arr);
        echo $a;//输出 1
        print_r($arr);//输出 Array ( [0] => taoshihan1 [1] => taoshihan2 )
    }
    /**
     * 传值和传地址测试
     * @param a
     * @param arr
     */
    public static function makeChange($a,&$arr){
        $a=4;
        array_push($arr, "taoshihan2");
    }

}

VariableDemo::main();

 

posted @ 2016-05-18 23:41  唯一客服系统开发笔记  阅读(350)  评论(0编辑  收藏  举报