正在做一个关于网络的程序。现在的问题为需要找出一些列链接中的每个链接所对应的链接的数量。举个列子来说,比如我从一个特定的链接开始,比如 http://blog.sina.com/aarre, 它对应的好友链接有:http://blog.sina.com/ase; http://blog.sina.com/sjeu; http://blog.sina.com/jruydr;.... 好友链接中的每个链接又对应着一些列的链接。比如http://blog.sina.com/ase中包含的链接有 http://blog.sina.com/fjrui;http://blog.sina.com.cn/hryd....现在的问题在于如何计算出每个好友链接 (http://blog.sina.com/ase) 中所包含的链接数量。比如ASE中为2,SJEU中为3,,,我现在能够计算出所有的数量,但无法以不同好友的方式区分他们。所以我想的办法是使用一个HASHMAP,把每个键对应上链接(ASE),值对应好友的链接(fjrui,hryd)。那么只需要分别计算出有多少相同的键。就可以知道好友链接的数量。不知道这种方法可行否?HASHMAP中有没有什么方法可以遍历出这种数量?

解决方案 »

  1.   

    这个一般都是存在db中的。friends = hashMap<好友,好友有几个好友>
      

  2.   

    HashMap<String,ArrayList<String>>
      

  3.   

    类似,不过好友还有链接的话,就是两层以上的属性结构HashMap(URL,ArrayList<HashMap>())我一直在找树的数据结构里有没有现成的,还没找到
      

  4.   

    HashMap里没有相同Key的值,它的值是唯一的,既一个Key对应一个value,三楼的方法可行!
    下面是我的方法:
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;public class MyHashMap {
    private HashMap<String, List> map = new HashMap<String, List>();

    public void put(String key, String value) {
    List list = null;
    if (map.get(key) == null) {
    list = new ArrayList();
    list.add(value);
    map.put(key, list);
    } else {
    list = map.get(key);
    list.add(value);
    }
    } public List get(String key) {
    List list = map.get(key);
    return list;
    }

    public int size() {
    return map.size();
    }

    public int length(String key){
    List list = map.get(key);
    return list.size();
    }
    }