impor java.util.ArrayList;
impor java.util.Koleksi;
impor java.util.HashMap;
impor java.util.List;
import java.util.Map;
Statistik Kata kelas publik {
Obj kelas {
int hitungan;
Keberatan(int hitungan){
this.count = hitungan;
}
}
Daftar publik<WordCount> statistik(String kata) {
Daftar<WordCount> rs = Daftar Array baru<WordCount>();
Peta <String,Obj> peta = HashMap baru<String,Obj>();
jika(kata == nol ) {
kembalikan nol;
}
kata = kata.toLowerCase();
kata = kata.replaceAll("'s", "");
kata = kata.replaceAll(",", "");
kata = kata.replaceAll("-", "");
kata = kata.replaceAll("//.", "");
kata = kata.replaceAll("'", "");
kata = kata.replaceAll(":", "");
kata = kata.replaceAll("!", "");
kata = kata.replaceAll("/n", "");
String [] wordArray = kata.split(" ");
for(String kata sederhana : wordArray) {
kata sederhana = kata sederhana.trim();
if (simpleWord != null && !simpleWord.equalsIgnoreCase("")) {
Obj cnt = map.get(simpleWord);
jika ( cnt!= nol ) {
cnt.count++;
}kalau tidak {
map.put(SimpleWord, Obj baru(1));
}
}
}
for(String kunci : peta.keySet()) {
WordCount wd = WordCount baru(kunci,peta.get(kunci).count);
rs.tambahkan(wd);
}
Koleksi.sort(rs, java.util.Comparator<WordCount>(){ baru
@Mengesampingkan
perbandingan int publik(Jumlah Kata o1, Jumlah Kata o2) {
int hasil = 0;
jika (o1.getCount() > o2.getCount() ) {
hasil = -1;
}lainnya jika (o1.getCount() < o2.getCount()) {
hasil = 1;
}kalau tidak {
int strRs = o1.getWord().compareToIgnoreCase(o2.getWord());
jika ( strR > 0 ) {
hasil = 1;
}kalau tidak {
hasil = -1 ;
}
}
hasil pengembalian;
}
});
kembalikan rs;
}
public static void main(String args[]) {
String word = "Pinterest mungkin adalah impian pemasar - situs ini sebagian besar digunakan untuk mengkurasi produk";
WordsStatistics s = WordsStatistics baru();
Daftar<WordCount> rs = s.statistics(word);
for(Jumlah Kata Kata1 : rs) {
Sistem.keluar.println(word1.getWord()+"*"+word1.getCount());
}
}
}