0

次のような ArrayList があります。

ArrayList<String> item;

アイテム [0] --> ブーム

項目 [1] --> パウ

項目[2] --> 強打

項目[3] --> zing

今私がやろうとしているのは、各アイテムを取得し、そのアイテムの名前を持つ文字列の空の ArrayList を作成することです。たとえば、結果は次のようになります。

ArrayList<String> boom; 

ArrayList<String> pow; 

ArrayList<String> bang;

ArrayList<String> zing;

これが簡単な答えであれば申し訳ありませんが、私はまだ学んでいます。

4

2 に答える 2

1

プログラミング言語では、変数名を使用してvalue、コンピューターのメモリに格納されているを参照します。したがって、変数名は、コンピューターのメモリに格納されているkeyにアクセスするためのものと見なすことができます。value標準データ構造Mapは、同様のkey値構造を持っています。ここMapで「boom」をキーnew ArrayList<String>()として、またvalue.

nameList-にすべての名前 (ブーム、パウ、バン) があるとします。

ArrayList nameList = new ArrayList(){{
    add("boom");
    add("pow");
    add("bang");
}};  

ここで、 で指定した名前ArrayListでを 3 つ作成します。それで、あなたはそれらをこのように入れます- StirngnameListMap<String, List<String>

Map<String, List<String> > vars  = new HashMap<String, List<String>>();

for(int i=0; i<nameList.size(); i++){

   String key = nameList.get(i);
   List<String> value = new ArrayList<String>();
   vars.put(key, value);
}   

完全なタラは-

import java.util.*;

public class ArrayListFromNameList {

    public static void main(String[] args){

        List<String> nameList = new ArrayList<String>(){{
            add("boom");
            add("pow");
            add("bang");
        }};  

        Map<String, List<String> > vars  = new HashMap<String, List<String>>();

        for(int i=0; i<nameList.size(); i++){

           String key = nameList.get(i);
           List<String> value = new ArrayList<String>();
           vars.put(key, value);
        } 

    }

  /* Use the Map vars like this -
  * vars.get("boom") --> will reuturns you an ArrayList<String>();
  * similarly vars.get("pow") --> will returns you an ArrayList<String>();
  */
}
于 2015-05-25T19:57:21.110 に答える