我想問你一個問題,我想計算給定數字(長)中指定數字從用戶中多少次,並將其打印爲int。計算一個指定的數字
你能幫我用這段代碼嗎?
爲我的英語道歉。
實施例:
<指定數目= 4;編號= 34434544;結果= 5.>
我想問你一個問題,我想計算給定數字(長)中指定數字從用戶中多少次,並將其打印爲int。計算一個指定的數字
你能幫我用這段代碼嗎?
爲我的英語道歉。
實施例:
<指定數目= 4;編號= 34434544;結果= 5.>
檢查最低顯著位是否等於您正在搜索的數字;然後除以十再檢查;繼續前進,直到你達到零。
int cnt = 0;
while (value != 0) {
if (value % 10 == digit) ++cnt;
value /= 10;
}
如果你想算的digit
的出現在大數目value
。
使Scanner
從System.in
獲得輸入。然後,遍歷String
,將其轉化爲char[]
。然後分析每個char
並計算原始字符。可能爲此使用Map<Character, Integer>
。對於Map
中的每個元素,如果在Map
中,則迭代一個。查詢Map
以獲取所需字符並在完成時打印結果。
public static void main(String[] args) {
CharacterFinder cf = new CharacterFinder();
Scanner scan = new Scanner(System.in);
String input = scan.nextLine();
Map<Character, Integer> resultsMap = cf.countChar(input);
System.out.println(resultsMap.get('g'));
}
// Note that 'null' means that it does not appear and if it is null, you ought print 0 instead.
// Also note that this method is case sensitive.
private Map<Character, Integer> countChar(String input) {
Map<Character, Integer> resultsMap = new HashMap<Character, Integer>();
for (int i = 0; i < input.length(); i++) {
Character element = input.charAt(i);
if (resultsMap.containsKey(element)) {
Integer cCount = resultsMap.get(element);
resultsMap.put(element, cCount + 1);
} else {
resultsMap.put(element, 1);
}
}
return resultsMap;
}
那麼,除非你已經知道你想要的char
。在那種情況下,分析確切的char
。
public static void main(String[] args) {
CharacterFinder cf = new CharacterFinder();
Scanner scan = new Scanner(System.in);
String input = scan.nextLine();
// Call counting method and print
System.out.println(cf.countChar(input, '5'));
}
// Counting method
private int countChar(String input, char c) {
int x = 0;
for (int i = 0; i < input.length(); i++) {
if (input.charAt(i) == c) {
x++;
}
}
return x;
}
如果您使用的是Java 8:
long count = String.valueOf(givenNumber).chars()
.filter(c -> c == (specifiedNumber + '0'))
.count();
謝謝你:) – Attix
轉換爲字符串,然後閱讀本文http://stackoverflow.com/questions/275944/how-do-i-count-the-number-of-occurrences-of-a-char-in-a-string –
無需轉換爲字符串:只需用'%10'測試該值,看看它是否等於4;然後將值除以10.重複,直到值爲零。 –
我會試試看,謝謝大家! – Attix