Letter Count
unknown
plain_text
2 years ago
2.2 kB
4
Indexable
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package Counter;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
import java.util.StringTokenizer;
/**
*
* @author ADMIN
*/
public class Counter {
// luu tru so lan xuat hien cua moi ky tu trong doan van ban
private Map<Character, Integer> charCounter
= new HashMap<Character, Integer>();
// luu tru so lan xuat hien cua moi tu trong van ban
private Map<String, Integer> wordCounter
= new HashMap<String, Integer>();
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Enter your content: ");
String content = scanner.nextLine();
// tao doi tuong dung cho viec dem
Counter counter = new Counter();
counter.analyze(content);
counter.display();
}
public void display() {
System.out.println(wordCounter);
System.out.println(charCounter);
}
public void analyze(String content) {
for (char ch : content.toCharArray()) {
// bo qua khoang trang va ki tu khong phai la ki tu chu
if (Character.isSpaceChar(ch)) {
continue;
}
// dem so lan xaut hien cua tung ky tu
if (!charCounter.containsKey(ch)) {
charCounter.put(ch, 1);
} else {
charCounter.put(ch, ((int) charCounter.get(ch)) + 1);
}
}
// dung lop String tokenzier de tach cac tu trong chuoi
StringTokenizer tokenizer = new StringTokenizer(content);
while (tokenizer.hasMoreTokens()) {
String token = tokenizer.nextToken();
if (!wordCounter.containsKey(token)) {
wordCounter.put(token, 1);
} else {
wordCounter.put(token, ((int) wordCounter.get(token)) + 1);
}
}
}
}
Editor is loading...