黑马程序员技术交流社区

标题: 对内存的理解扩展 [打印本页]

作者: lf027    时间: 2015-5-5 21:50
标题: 对内存的理解扩展
//数组溢出还能继续添加元素
class Add
{    //定义成员变量,数组的容量是10
    static int[] arr = new int[10];
    //给索引赋初始值
    static int index = 0;

    public static void main(String[] args)
    {    //遍历给add添加值
        for(int i=0;i<30;i++)
        {
            add(i);
        }
        //遍历(溢出的)数组
        for(int i=0;i<arr.length;i++)
        {
            System.out.print(arr[i]+"\t");
        }

    }
    //给add方法传入i
    public static void add(int i)
    {   
        //当索引在10的范围的时候,数组还没越界
        if(index<=9)
        {   
            //给数组赋值
            arr[index]=i;
        }else
        {   
            //定义一个新的数组
            int[] arr1=new int[index+1];
            //
            for(int j=0;j<arr.length;j++)
            {    //给新定义的数组赋值
                arr1[j]=arr[j];
            }
            //把新数组的地址指向以前的数组
            arr=arr1;
            //给新的数组赋值
            arr[index]=i;
            
        }
        //统计数
        index++;
    }

}








欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2