Statistik Lanjutan
Termasuk bagian Logika & Alur dalam perjalanan Java di Coddy. Pelajaran 53 dari 59.
Sekarang kita akan menambahkan statistik lanjutan menggunakan method HashMap untuk menemukan kata yang paling sering dan paling jarang muncul, serta menghitung persentase.
Tantangan
MudahTingkatkan program agar menampilkan:
- Jumlah total kata
- Jumlah kata unik
- Setiap kata beserta jumlah kemunculan dan persentasenya dari total, satu baris untuk setiap kata, dalam urutan alfabetis (
TreeMapmenjaga kuncinya tetap terurut; jika kamu menggunakanHashMap, urutkan kuncinya sebelum mencetaknya)
Contoh:
Input:
Coddy!Expected Output:
Total words: 1
Unique words: 1
Word statistics:
coddy: 1 (100.00%)Coba sendiri
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String text = scanner.nextLine();
String[] sentences = text.split("\\.");
String[][] textArray = new String[sentences.length][];
HashMap<String, Integer> wordCount = new HashMap<>();
for (int i = 0; i < sentences.length; i++) {
textArray[i] = sentences[i].trim().split(" ");
for (int j = 0; j < textArray[i].length; j++) {
if (!textArray[i][j].isEmpty()) {
String word = textArray[i][j]
.replaceAll("[^a-zA-Z ]", "")
.toLowerCase();
wordCount.put(word, wordCount.getOrDefault(word, 0) + 1);
}
}
}
System.out.println("Word counts:");
for (Map.Entry<String, Integer> entry : wordCount.entrySet()) {
System.out.println(entry.getKey() + ": " + entry.getValue());
}
}
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Logika & Alur
1Array Multidimensi
Dasar Array 2DMengakses Elemen Array 2DLoop Bersarang dengan Array 2DRangkuman: Array 2DPenjumlahan dan Pengurangan MatriksArray BergerigiArray 3D dan Lebih JauhPola Umum Array 2DRangkuman: Semua tentang Array2HashMap Bagian 1
Apa itu HashMap?Deklarasikan HashMapMengakses nilaiPeriksa apakah key adaMengubah dictionaryRingkasan: HashMap3HashMap Bagian 2
Method HashMapIterasi dengan keySet()Iterasi dengan entrySet()HashMap BersarangRangkuman: Kelola GudangRangkuman: Operasi HashMap6Alur Kontrol Lanjutan
Pernyataan LabelEkspresi SwitchPencocokan PolaKlausa PenjagaRingkasan Alur Kontrol9Proyek: Penghitung Kata Unik
Input dan Penyimpanan TeksPemrosesan KataLatihan sendiri: Compiler Java online