2014-12-11 34 views
0

的方法public int count(String str)
我怎樣才能return該字符串參數str被存儲在對象的number of times的Java算時間字符串參數存儲在一個對象

我寫了下面的代碼,但我認爲這不是假設這樣做。

public int count(String str) 
{ 
    int count = 0; 
    // if the Object contains str 
    if(contains(str)) { 
    count++; 
    else { 
    add(str); //add str to Object 
    count++; 
    } 
    return count; 
} 

當我在命令行鍵入,例如 「測試」 的count1。但是當我再次輸入「測試」時, count仍然是1。 (它應該是2)。

預先感謝您。

回答

1

然後聲明count變量爲全局變量。

1

由於每次運行它時初始化爲count = 0,因此您的方法不能返回除1之外的任何內容。

使count成爲一個類變量而不是本地變量,以便它將在該方法的調用之間保持其值。

+0

因此,基本上我爲類變量執行'private int count = 0',將其調用爲'count'方法,然後執行'count'? – user2875021 2014-12-11 04:24:22

+0

我不確定你的意思是「調用它來計算方法」,但是,如果你在你的類中聲明count爲'private int count = 0;'並且從你的類中移除了'int count = 0;'方法,它會在你的count()方法的調用之間保持計數值。 – azurefrog 2014-12-11 04:26:05

+0

這麼小的變化會產生巨大的差異......我忽略了它。 – user2875021 2014-12-11 04:30:21

1

您應該將其聲明爲全局變量。 聲明int count = 0;將變量值重置爲0.因此,當再次測試時,它將從1更新爲0並再次更新爲0.這應該是問題所在。

相關問題