2

我正在尝试添加要通过单个键值添加/检索的各种记录。

每个数据记录应具有以下参数;

public class WebRecord {
        Integer UniqueCustomerID;
        Integer Count; // Number of websites for a given customer

//Repeat the following 'Count' number of times
       { // Each Record for a given Website for the same customer
    String BusinessName, Websites, siteTag;
    Integer uniqueWebID, BusinessTypeID;
       }

}

我希望这些记录基于我从 Web 服务获得的计数值而存在。我打算如下使用Hashmap:

有人可以告诉我如何在 HASHMAP 中实现该数据结构吗?我想使用单个键值 UniqueCustomerID 放置和获取这些记录;

4

2 回答 2

1

对java概念不好,但我认为你可以做到,

     class WebRecord{ 
          int UniqueCustomerID; 
          int Count;
     } 

     class ContactRecord{ 
        String BusinessName, Websites, siteTag; 
        int uniqueWebID, BusinessTypeID; 
    } 

在你的java文件中

   MyActivity{ 
            public Map<WebRecord,ArrayList<ContactRecord>> map=new HashMap<WebRecord,ArrayList<ContactRecord>>(); 

        //now create one object of web record

        //create arraylist of ContactRecord depending upon "count" variable's value

        // fill the above both and put into map

            map.put(webRec, arrContact); 
     } 
于 2012-05-05T05:25:49.390 回答
0

如果您有多个ContactRecord等于该Count值的对象,则无需显式存储该值。

鉴于您上面的数据结构,您可以做到。

public HashMap<Integer, ArrayList<ContactRecord>> map;

地图的关键是UniqueCustomerID. 要发现Count价值,您可以像这样查询地图中的列表。

map.get(customerId).size();
于 2012-05-05T05:38:34.740 回答