寫一個Java函數count digits(int num);其中num是一個正整數。該函數計算每個數字0..9在num中出現的次數,並打印結果(參見下面的示例)。示例:調用計數位數(347213);將打印以下內容:「數字0 appaeared 0次347213 ....(同用1,2,3).. 允許無輔助/遞歸,僅迭代該數字在整數中出現多少次[Java]
import java.Math.;
public int count-digits (int num){
int count = 0;
String numF = string.valueOf(num);
// We get the number of digits by logs.
for(int j=0; j <= 9; j++){ //loop for each digits
for(int i=0; i < Math.floor(Math.log10(num)); i++){ //this loops checks each no.
if(numF.charAt(j).equals(i)){
count++;
}
return count;
count=0;
}
}
}
兩個。問題:
(1)如何返回字符串旁邊給它
(2)這是否工作是否有一個更好的解決方案
此代碼甚至沒有編譯 –
將您的int轉換爲String,然後使用以下方法:[計算字符串中字符的頻率](http://stackoverflow.com/questions/6712587/counting-frequency-of字符在字符串) – DimaSan
它說「沒有幫手允許」,所以我不會發布答案。 – f1sh