本文介绍了如何填写为整数的Java二维的ArrayList?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我要创建具有未知大小的二维数组。所以我决定去与一个二维的ArrayList问题是我不知道如何初始化这样的阵列或存储信息。

说我有以下数据

  0连接1
   2连接3
   4连接5

....等多达随机连接的大量

和我想插入

 真(1)到[0] [1]
真(1)到[2] [3],
真(1)到[4] [5]。

阵列可以自动更新柱/为我行

任何帮助AP preciated感谢


解决方案

Like this for instance:

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

twoDim.add(Arrays.asList(0, 1, 0, 1, 0));
twoDim.add(Arrays.asList(0, 1, 1, 0, 1));
twoDim.add(Arrays.asList(0, 0, 0, 1, 0));

or like this if you prefer:

List<List<Integer>> twoDim = new ArrayList<List<Integer>>() {{
    add(Arrays.asList(0, 1, 0, 1, 0));
    add(Arrays.asList(0, 1, 1, 0, 1));
    add(Arrays.asList(0, 0, 0, 1, 0));
}};


To insert a new row, you do

twoDim.add(new ArrayList<Integer>());

and to append another element on a specific row you do

twoDim.get(row).add(someValue);


Here is a more complete example:

import java.util.*;

public class Test {

    public static void main(String[] args) {

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

        String[] inputLines = { "0 1 0 1 0", "0 1 1 0 1", "0 0 0 1 0" };

        for (String line : inputLines) {
            List<Integer> row = new ArrayList<Integer>();

            Scanner s = new Scanner(line);
            while (s.hasNextInt())
                row.add(s.nextInt());

            twoDim.add(row);
        }
    }
}

这篇关于如何填写为整数的Java二维的ArrayList?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-28 21:07