使用hashmap封装数据 到底好不好?听说不是同步的 容易出错  请问大家如何实现同步 我的jdk是5.0的

解决方案 »

  1.   

    没有好不好,只有合适不合适。
    如果你的用到的数据需要同步,建议使用Hashtable,这个是同步的。不用你自己去实现了。
      

  2.   

    hashtable是同步
    hashMap是异步
      

  3.   

    经常看到介绍 ArrayList 和HashMap是异步,Vector和HashTable是同步,这里同步是线程安全的,异步不是线程安全的,举例说明:
    当创建一个Vector对象时候,
    Vector ve=new Vector(); 
    ve.add("1");
    当在多线程程序中,第一个线程调用修改对象ve的时候,就为其上了锁,其他线程只有等待。
    当创建一个ArrayList对象时候,
    ArrayList list=new ArrayList(); 
    list.add("1");
    当在多线程程序中,第一个线程调用修改对象list的时候,没有为其上锁,其他线程访问时就会报错。
    eg:list.remove("1"),然后再由其他线程访问list对象的1时就会报错。------这是转载的
      

  4.   

    Vector是同步 HashMap是异步这两个结合使用  就像这样使用... 从数据库取出满足条件的数据并存入HashMap 再将整个HashMap存入Vector  然后在读取第二个数据....现在如果有两个用户同事取出满足条件的数据列表那会不会把 用户1 的列表数据显示给 用户2  ???
      

  5.   

    应该没多少人需要用到同步吧?绝大多数的数据都是一个独立的实例。用hashMap足够了
      

  6.   

    基本上都用ArrayList 和HashMap了....还真没遇到必须用同步的情况
      

  7.   

    hashtable较安全hashMap较快,一句话要性能没安全要安全没性能
      

  8.   

    Vector是同步 HashMap是异步 这两个结合使用  我想的是应该有效率 也有安全了吧....呵呵 猜测的!!!
      

  9.   

    开发了几个项目一般都使用的 hashmap 或者arraylist key键可以为空 但是只能是一个key value值可以为空
    这样开发比较方便 所以建议 没有特殊要求还是使用hashmap 比较好
      

  10.   

    那这两个结合 好还是不好??Vector HashMap