2016-04-27 80 views
0

我知道這可以在C/C++中工作,但不知何故,我不會在java中找到一種方法來實現此功能。Java - 計數方法調用內部方法

我有大約50種方法,我想統計我給他們打了多少次電話。如果我在該方法之外創建了50個變量,那麼它就會工作,並且我只是簡單地增加它們。

但這是很多變數的方法。有沒有辦法處理這個函數內的一個變量?或者在方法之外使用一個變量。

我只需要一種方法來做到這一點與一個變量。

有沒有人有想法?

+0

陣列拯救你。 – Hackerdarshi

+3

使用'HashMap '? – flakes

回答

0

Decalare這其中,其可從訪問。

Map<String, Integer> callCount=new HashMap<String,Integer>(); 

然後在每一個方法做這樣的事情:

public void anyMethod() 
{ 
    Integer count=callCount.get("anyMethod"); 

    if(count==null) 
    { 
     count= new Integer(0); 
    } 

    count++; 
    callCount.put("anyMethod",count); 

    /** 
    other things that your method do...... 
    **/ 
} 
+0

現在沒有IDE,所以如果有任何錯誤,請忽略任何錯誤。 – Saif

1

Map<String,Integer> counters = new HashMap<>();

String是方法的名稱(或任何你希望它是)和Integer是計數器。

只是聲明它的功能外,並在Map增加每個值,當你打你的方法(根據關鍵,這是方法名)