美文网首页
Java引用类型

Java引用类型

作者: daysting | 来源:发表于2019-06-26 09:50 被阅读0次

题:

class ChangeIt

{

   static void doIt( int[] z )

    {

        int[] A = z;

        A[0] = 99;

    }

}

public class TestIt

{

    public static void main( String[] args )

    {

        int[] myArray = {1, 2, 3, 4, 5};

        ChangeIt.doIt(myArray);

        for (int i = 0; i < myArray.length; i++)

        {

            System.out.print(myArray[i] + " ");

        }

    }

}

选择: ( )

A .1 2 3 4 5

B. 99 2 3 4 5

C. 0 2 3 4 5

D. 99 99 99 99 99


答案为B, 这其中主要涉及java引用类型的地址传递.  all know在基本类型中等号赋值相当于值的拷贝

例如 A=1    B=A    则B=1

在引用类型中  int[] A = z; 会进行地址的拷贝

运行图解

由图看出数组A和Z同时指向了同一块地址,所以在数组A[0]=99 意味着数组Z指向的地址的对象也发生了改变!

相关文章

网友评论

      本文标题:Java引用类型

      本文链接:https://www.haomeiwen.com/subject/tiffcctx.html