2
{
  "TC_01": {
    "step": "TS01",
    "keyword": "navigate",
    "object": “search_fare"
  }
  "TC_02": {
    "step": "TS02",
    "keyword": "Verify text",
    "object": “text_header_Traveler"
  }
}

Javaで多次元ArraylistまたはHashMapを使用して次のデータ構造を実現するにはどうすればよいですか? あなたの提案を提供してください

4

4 に答える 4

3

のクラス/タイプを作成する

{ "step": "TS01", "keyword": "navigate", "object": “search_fare" }

言うYourClass

class YourClass{
  String step,keyword,object;  //type string is just example
...
}

それなら地図が必要Map<String, YourClass>

于 2013-02-18T13:54:09.450 に答える
1

コードを見ると、「コードの匂い」(繰り返しコード) と呼ばれるものが見つかります。ステップ、キーワード、オブジェクトの 3 つのパラメーターが繰り返される独自の構造があります。それをクラスに入れて、次のようにすることをお勧めします。

public class YourClass{

    private String keyword;
    private String step;
    private String object;

   //It´s your choice whether to have setters or have everything in through constructor

   public String getKeyword(){
       return this.keyword;
   }

   .... //continue with getters for step and object
}

これで、マップを調べるためのキーが文字列「TC_01」、「TC_02」になり、YourClass が返されたら、呼び出すだけでよいことを意味する Map を持つように、hashMap の通常の構造を持つことができます。 getKeyword() ... 残りの情報を取得します。

例:

YourClass yourClassVariable = new YourClass();
yourClassVariable.setStep("TS01");
yourClassVariable.setKeyword("navigate");
yourClassVariable.setObject("search_fare");

Map<String,YourClass> mp=new HashMap<String, YourClass>();

// adding or setting elements in Map by put method key and value pair
mp.put("TC_01", yourClassVariable);

:)

于 2013-02-18T14:05:36.000 に答える
1
Map<String, TCObject> = new HashMap<String, TCObject>;

ここで、TCObject はフィールドを含むクラスです。

private String step;
private String keyword;
... etc ...
于 2013-02-18T13:53:22.767 に答える