【问题标题】:java index of 2 dimensional arrays二维数组的java索引
【发布时间】:2014-07-01 04:52:40
【问题描述】:

在使用二维数组时遇到问题。我有这样的事情:

List<List<String>> pmValues = new ArrayList<List<String>>();
List<String> pmList = new ArrayList<String>();

如果pmList的索引等于另一个值(layerrate),我想从pmValues中添加值:

for (something) {
    String layerrate = Something;
    String value = Something;

    for (int aa = 0; aa < pmList.size(); aa++) {
        int abc = aa;
        String abc2 = pmList.get(aa);
        for (int bb = 0; bb < pmValues.size(); bb++) {
            if (layerRate.contentEquals(abc2)) {
                pmValues.add(bb, value);   --> it doesnt save??? error
            }
        }
    }
}

我需要这样的东西,我运行了代码,但似乎无法正常工作,因为我需要获取 pmList 的索引以使用它将来自 pmValues 的值保存在与 pmList 相同的索引中。

pmList: A
pmValues (values): A1, A2, A3, A4
pmList: B
pmValues (values): B1, B2, B3, B4
pmList: C
pmValues (values): C1, C2, C3, C4

有人知道吗?太棒了

【问题讨论】:

  • List&lt;List&lt;String&gt;&gt; 有什么意义,如果你想将 A 映射到 A1,A2.. 那为什么不使用Map&lt;String, List&lt;String&gt;&gt;

标签: java arrays string multidimensional-array


【解决方案1】:

如果我关注你的问题,你需要get内部列表,

pmValues.add(bb, value);

应该是这样的,

if (pmValues.get(aa) == null) {
  pmValues.set(aa, new ArrayList<String>());
}
pmValues.get(aa).add(bb, value);

【讨论】:

    猜你喜欢
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 2011-07-07
    • 2018-06-25
    • 2020-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多