关于可变长数组 ArrayList

发布时间:2024年01月16日

在java中存在有二维数组的行会发生变化,那么我该如何定义这个可变行的数组?
在Java中,可以使用ArrayList来定义一个可变的二维数组。首先,需要导入ArrayList类,然后创建一个ArrayList的ArrayList,即二维ArrayList。这样,每一行都可以根据需要进行添加、删除或修改元素。

import java.util.ArrayList;

public class Main {
    public static void main(String[] args) {
        // 创建一个二维ArrayList
        ArrayList<ArrayList<Integer>> matrix = new ArrayList<>();

        // 添加一行
        ArrayList<Integer> row1 = new ArrayList<>();
        row1.add(1);
        row1.add(2);
        row1.add(3);  // 添加元素通过add() 方法添加
        matrix.add(row1);  // 然后将row1添加到二维数组matrix中,将其作为二维数组的第一行的值

        // 添加另一行
        ArrayList<Integer> row2 = new ArrayList<>();
        row2.add(4);
        row2.add(5);
        row2.add(6);
        matrix.add(row2);

        // 修改第一行的第二个元素
        matrix.get(0).set(1, 99);  // get(0):表示获取第一行值   set(1,99):表示修改第2个元素值,修改为99

        // 删除第二行
        matrix.remove(1); // remove(1):表示删除第2行

        // 输出二维ArrayList的内容
        for (ArrayList<Integer> row : matrix) {
            for (int num : row) {
                System.out.print(num + " ");
            }
            System.out.println();
        }
    }
}

在Java中,你可以使用ArrayList来实现可变行的二维数组。ArrayList是一个动态数组,可以根据需要自动调整大小。

import java.util.ArrayList;

public class Main {
    public static void main(String[] args) {
        // 创建一个可变行的二维数组
        ArrayList<ArrayList<Integer>> newPOS = new ArrayList<>();

        // 添加第一行数据
        ArrayList<Integer> row1 = new ArrayList<>();
        row1.add(1);
        row1.add(2);
        row1.add(3);
        row1.add(4);
        row1.add(5);
        newPOS.add(row1);

        // 添加第二行数据
        ArrayList<Integer> row2 = new ArrayList<>();
        row2.add(6);
        row2.add(7);
        row2.add(8);
        row2.add(9);
        row2.add(10);
        newPOS.add(row2);

        // 获取第i行的前5列数据
        int i = 0; // 假设获取第一行
        ArrayList<Integer> row = newPOS.get(i);  // 获取第i行的值(i=0)
        ArrayList<Integer> firstFiveColumns = new ArrayList<>(row.subList(0, 5)); // 获取第i行的前5列的值[0,5)

        // 输出第i行的前5列数据
        for (int j = 0; j < 5; j++) {
            System.out.println(firstFiveColumns.get(j));
        }
    }
}

在上面的示例中,我们使用ArrayList<ArrayList>来定义一个可变行的二维数组newPOS。
我们通过调用ArrayList的add()方法向newPOS中添加行数据,并使用get()方法获取特定行的数据。然后,我们使用subList()方法获取第i行的前5列数据,并将结果存储在名为firstFiveColumns的ArrayList中。最后,我们遍历firstFiveColumns并输出每个元素的值。

文章来源:https://blog.csdn.net/qq_44636569/article/details/135620128
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。