前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >关于Guava ForwardingMap

关于Guava ForwardingMap

作者头像
WindWant
发布2020-09-10 23:21:22
5510
发布2020-09-10 23:21:22
举报
文章被收录于专栏:后端码事后端码事

ForwardingMap是什么?

ForwardingMap 是一个装饰器

负责把所有的map操作转发到所代理的map。

操作转发是直接的,不经任何中间操作的。

对方法的覆写要慎重,比如关联的put和putAll,必须同时处理。

不保证线程安全

示例:

代码语言:javascript
复制
Map map = new HashMap();
ForwardingMap fmap = new ForwardingMap() {
    @Override
    protected Map delegate() {
        return map;
    }
};

fmap.put("a", 111);
fmap.put("b", 222);
fmap.put("c", 333);

System.out.println(fmap.entrySet());

输出:
[a=111, b=222, c=333]

为什么要用ForwardingMap?

如上示例,对于使用ForwardingMap的主体,可以不用考虑多代理的Map的具体实现。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-04-18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ForwardingMap是什么?
  • 为什么要用ForwardingMap?
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档