Java编程思想(十三)

2019-05-25  本文已影响0人  MikeShine

第16章 数组

到现在,你对数组的认识停留在:可以创建组装、通过索引访问、长度不可变。
下面,我们了解一下数组比较高级的东西

16.1 数组为什么特殊

数组、容器这种,都叫做 持有对象 的方式。
但是数组在以下三个方面有优点:

16.2 数组是第一级对象

这里说了基本类型数组 和 其他对象数组的区别。二者基本没有区别,只是存放的对象不同,其他方法都相同。

16.3 返回一个数组

在 C/C+ 中,在返回数组操作时,由于只能返回指向数组的指针,容易造成内存泄漏,生命周期控制十分困难。
但是在 java 中,由于有辣鸡回收器的存在,所以直接来 “返回一个数组” 就完事了。

16.4 多维数组

直接看代码,在多维数组这里有一个 Arrays.deepToString() 方法。

public static void main(String args[]){
        int[][] a ={
                {1,2,3},
                {4,5,6}
                };
        System.out.println(Arrays.deepToString(a));
    }

16.5 数组与泛型

数组这里基本不会用到泛型。但是书上给出了一个非常特殊的例子,用以说明 java 理论上是支持这种定义方式的。

16.6 创建测试数据

这一小节给出了几种填充数组的方法。用于我们将数据填入数组。

int[] a = new int[6];
Arrays.fill(a,1);  // 全部填充 1
Arrays.fill(a,,1,4,2);  // 指定位置填 2

16.7 Arrays 实用功能

这一个小节作者给出了 Arrays类中的一些比较常用的方法。

System.arraycopy(i,start,j,start,length)  // 4个参数

16.8 总结

没啥总结的

上一篇下一篇

猜你喜欢

热点阅读