JAVA多维动态数组

JAVA多维动态数组

  • 一维数组
    • 数组大小 size()
    • 增加元素 add
    • 获取元素 get
    • 删除元素 remove
    • 修改元素 set
    • 输出
  • 二维数组
  • 三维数组

ArrayList 类是一个可以动态修改的数组(队列),与普通数组的区别就是它是没有固定大小的限制,提供了相关的添加、删除、修改、遍历等功能。

一维数组

List<Integer> list = new ArrayList<Integer>();

List list 表示声明一个名为 list 的变量,其类型是 List。List 是一个接口,表示一个有序的集合。Integer 是列表中元素的类型,表示这个列表将存储整数,<>中只能是引用类型,即基本类型的包装类。
new ArrayList();:创建一个新的 ArrayList 对象,这个 ArrayList 对象的类型是 Integer 的列表,并将其赋值给 list。ArrayList 是 List 接口的一个具体实现,表示一个动态数组,可以根据需要调整大小。

数组大小 size()

list.size();

增加元素 add

list.add(12); //2为元素

获取元素 get

list.get(1); //1为下标

删除元素 remove

list.remove(2); //2为下标

修改元素 set

list.set(2, 13); //2为下标,13为修改值

输出

可以直接输出,也可以遍历(for、for-each)输出。

二维数组

List<List<Integer>> twoList= new ArrayList<List<Integer>>();

List:表示一个包含整数列表的列表。也就是说,twoList 是一个二维列表(或者说一个列表的列表),每个元素都是一个 List 类型的对象。

三维数组

List<List<List<Integer>>> threeList= new ArrayList<>();

java7之后,可以进行类型推断,ArrayList<>()中<>中内容可以省略。
这行代码创建了一个三维动态数组,最外层是一个 ArrayList,其中的每个元素也是一个 ArrayList,而这些 ArrayList 中的每个元素又是一个 ArrayList。
初始化:

for (int i = 0; i < 3; i++) {
    List<List<Integer>> twoDimArray = new ArrayList<>();
    for (int j = 0; j < 4; j++) {
        List<Integer> oneDimArray = new ArrayList<>();
        for (int k = 0; k < 5; k++) {
            oneDimArray.add(i * j * k); // 用 i * j * k 的值进行初始化
        }
        twoDimArray.add(oneDimArray);
    }
    dynamicArray.add(twoDimArray);
}

通过嵌套的循环对数组进行初始化,内层循环填充元素,外层循环组织结构。

你可能感兴趣的:(java,开发语言)