关于可变长数组 ArrayList

在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并输出每个元素的值。

  • 13
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值