猿问
下载APP

如何在Java中创建多维ArrayList?

如何在Java中创建多维ArrayList?

无论如何我对ArrayLists相当新,但是我需要他们来完成这个项目我是这样做的,如果你们能帮助我的话我会非常感激!
基本上,我需要创建一个多维的ArrayList来保存String值。我知道怎么用标准数组来做这个,public static String[][] array = {{}}但是这并不好,因为我不知道我的数组的大小,我所知道的是它将有多少维度。

所以,如果你们知道如何制作一个“具有2 / +尺寸的动态可调整大小的阵列”,请告诉我。

谢谢提前,
安迪

编辑/更新


也许使用变量调整大小或定义标准数组会更容易?但我不知道?
使用我对ArrayList的原始想法可能更容易......我只需要一个完整的示例代码来创建2D ArrayList并在不知道索引的情况下将这些示例值添加到两个维度。


慕雪6173905
浏览 36回答 3
3回答

MM们

ArrayList<ArrayList<String>> array = new ArrayList<ArrayList<String>>();根据您的要求,您可以使用类似下面的Generic类来简化访问:import&nbsp;java.util.ArrayList;class&nbsp;TwoDimentionalArrayList<T>&nbsp;extends&nbsp;ArrayList<ArrayList<T>>&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;void&nbsp;addToInnerArray(int&nbsp;index,&nbsp;T&nbsp;element)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(index&nbsp;>=&nbsp;this.size())&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;this.add(new&nbsp;ArrayList<T>()); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;this.get(index).add(element); &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;void&nbsp;addToInnerArray(int&nbsp;index,&nbsp;int&nbsp;index2,&nbsp;T&nbsp;element)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(index&nbsp;>=&nbsp;this.size())&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;this.add(new&nbsp;ArrayList<T>()); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ArrayList<T>&nbsp;inner&nbsp;=&nbsp;this.get(index); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(index2&nbsp;>=&nbsp;inner.size())&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inner.add(null); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inner.set(index2,&nbsp;element); &nbsp;&nbsp;&nbsp;&nbsp;}}

宝慕林4294392

如果您被允许使用预定义的Java类,您可以执行以下操作:private&nbsp;static&nbsp;ArrayList<ArrayList<String>>&nbsp;biDemArrList&nbsp;=&nbsp;new&nbsp;ArrayList<ArrayList<String>>();然后你可以添加新元素,例如:ArrayList<String>&nbsp;temp&nbsp;=&nbsp;new&nbsp;ArrayList<String>();&nbsp;//&nbsp;added&nbsp;()&nbsp;temp.add("Hello&nbsp;world.");biDemArrList.add(temp);希望你能理解我的意思和发生的事情。此外,您还需要导入java.util.ArrayList;&nbsp;为此,如果您正在使用Java类。

慕姐4208626

我可以想到一个数组里面的数组或一个Guava的MultiMap?例如ArrayList<ArrayList<String>>&nbsp;matrix&nbsp;=&nbsp;new&nbsp;ArrayList<ArrayList<String>>();
打开App,查看更多内容
随时随地看视频慕课网APP
我要回答