-2

私はJavaアプリケーションに取り組んでおり、これは非常に基本的なテストツールです. 必要なことは、マップ リストに単一のキーを持つ複数の値を保存することです。たとえば、「キー、値、値」は「1,www.google.com,test」、「2,www.gmail.com」です。 、テスト」など。また、プロセスが完了したら、それぞれのキーの値 (テスト) を変更する必要があります。

これを行う方法はありますか、Google で検索しましたが、適切に動作していることを見つけることができませんでした ' https://commons.apache.org/proper/commons-collections/javadocs/api-3.2.1/org/apache/commons /collections/MultiMap.html '

貴重な回答とともにサンプルコードを教えていただければ幸いです。

コード:

org.apache.commons.collections.map.MultiKeyMap をインポートします。

公開クラス テスト {

static MultiKeyMap masterLinkList = new MultiKeyMap();
static String fetchUrl, urlStatus, urlMessage;

public static void main(String[] args) {
    // TODO Auto-generated method stub

    masterLinkList.put(1,"www.google.com", "Test");
    masterLinkList.put(2,"www.gmail.com", "Test");

    System.out.println(masterLinkList.get(1));

    masterLinkList.put(2,"www.gmail.com", "Test");

    if(masterLinkList.containsKey(1)&&masterLinkList.containsValue("Test")){
        masterLinkList.put(1,"www.gmail.com", "Passed");
    }
    System.out.println(masterLinkList.get(1));
}

}

ありがとう、

4

5 に答える 5

1

Google Guava は、うまく機能しているいくつかの Multimap 実装を提供しています

詳細な説明: https://code.google.com/p/guava-libraries/wiki/NewCollectionTypesExplained#Multimap

例:

Multimap<String,String> myMultimap = ArrayListMultimap.create();
// Adding some key/value
myMultimap.put("Fruits", "Bannana");
myMultimap.put("Fruits", "Apple");
myMultimap.put("Fruits", "Pear");
myMultimap.put("Vegetables", "Carrot");

// Getting the size
int size = myMultimap.size();
System.out.println(size);  // 4

// Getting values
Collection<string> fruits = myMultimap.get("Fruits");
System.out.println(fruits); // [Bannana, Apple, Pear]

Collection<string> vegetables = myMultimap.get("Vegetables");
System.out.println(vegetables); // [Carrot]

// Iterating over entire Mutlimap
for(String value : myMultimap.values()) {
 System.out.println(value);
}

// Removing a single value
myMultimap.remove("Fruits","Pear");
System.out.println(myMultimap.get("Fruits")); // [Bannana, Pear]

// Remove all values for a key
myMultimap.removeAll("Fruits");
System.out.println(myMultimap.get("Fruits")); // [] (Empty Collection!) 
于 2014-09-14T08:05:23.460 に答える