IT虾米网

对引用数据类型的新理解

mate10pro 2018年05月30日 编程语言 1219 0

 

  之前学习的时候只是知道有基本数据类型和引用数据类型两大类,但是不知道区别,或者说是各自有什么特性,

今天意外收获了点东西

package test; 
 
public class CopyOfMaopao { 
 
    public static void main(String[] args) { 
        int array[]=new int[]{0,8,5,7,8,5}; 
        int[] smalltobig = smalltobig(array); 
        int[] bigtosmall = bigtosmall(array); 
        for (int i : smalltobig) { 
            System.out.println(i); 
        } 
        System.out.println("-------------------------------"); 
        for (int i : bigtosmall) { 
            System.out.println(i); 
        } 
        System.out.println("-------------------------------"); 
        for (int i : array) { 
            System.out.println(i); 
        } 
    } 
     
    public static int[] smalltobig(int[] a) { 
        for (int i = 0; i < a.length; i++) { 
            a[i]=0; 
        } 
        return a; 
    } 
    public static int[] bigtosmall(int[] b) { 
        for (int i = 0; i < b.length; i++) { 
            b[i]=1; 
        } 
        return b; 
    } 
}

 

运行输出结果如下:

                

结论:因为数组为引用数据类型,所以形参 int [] a 则完全等于实参 int array [],int [] a 是对实参的引用它即等于实参。

   所以输出的结果一样,本质都是输出的都是同一个地址的内容,而基本数据类型只是是对值的传递,所以不会改变原

   有的变量的值。

评论关闭
IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!