首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我们如何计算程序调用put()和get()函数的次数?

我们如何计算程序调用put()和get()函数的次数?
EN

Stack Overflow用户
提问于 2013-11-17 04:09:51
回答 2查看 1.3K关注 0票数 2

假设我们在程序中使用一个映射,我们将如何计算程序调用put()和get()函数的次数?如果我们创建了多个映射实例呢?您将如何总结每个地图对象的总数?事实上,一位朋友告诉我,他在java求职面试中遇到了这个问题。我找到了解决办法,但没有弄清楚。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-17 04:16:17

如果只想在类中添加对方法的调用,请使用static字段:

代码语言:javascript
复制
public class Map ... {
    private static int count = 0;

    public ... get(...) {
        count++;
        ...
    }

    public void put(...) {
        count++;
        ...
    }

    public static int getCount() {
        return count;
    }
}
票数 2
EN

Stack Overflow用户

发布于 2013-11-17 04:13:48

这里有一种方法,假设程序可以使用Map的子类而不是标准的Java:

代码语言:javascript
复制
public class MyMap<K, V> extends Map<K, V> {
    int getCount = 0;

     @override
     public V get(K key) {
          getCount++;
          return super.get(key);
     }

     public getGetCount() {
         return getCount;
     }
}

还值得注意的是,模拟框架解决了类似的问题(尽管这个特定的问题只是他们所做的一件小事)。例如,Mockito生成类/接口的模拟版本,用于计算每个方法的调用次数。除非您实现了一些顽固性行为,否则模拟本身就无法立即使用。或者,如果您使用mockito,间谍,这是类似于继承,可能是最快的方式来实现这一行为。有关更多信息,请参见https://code.google.com/p/mockito/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20027078

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档