Implementacja
Przekształcą Państwo plan w kod: znormalizują dane, podzielą je na tokeny, policzą wyniki i wyświetlą najważniejsze z nich w małych, czytelnych krokach.
Implementacja to bezpłatna lekcja Java Academy na CoddyKit. To lekcja 2 z 3. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Java Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Java Academy zawiera 3 lekcji w sumie.
Podsumowanie planu
Podsumowanie planu: zamiana na małe litery, usunięcie znaków interpunkcyjnych, podział na tokeny, zliczanie za pomocą mapy, a następnie wyświetlenie podsumowań i N najczęstszych elementów. Każdy krok powinien być mały i przejrzysty.
Normalizacja
Normalizacja: zamiana liter na małe oraz zastąpienie znaków innych niż litery spacjami. Dzięki temu słowa Be i be nie są traktowane jako osobne tokeny, a przecinki i kropki zostają usunięte.
Tokenizacja
Tokenizacja: podział po białych znakach w celu uzyskania poprawnych słów. Najpierw należy usunąć białe znaki z początku i końca, aby pierwszy token nie był pusty.
Zliczanie
Zliczanie: należy użyć HashMap odwzorowującej słowo na liczbę wystąpień. Dla każdego tokenu trzeba zwiększyć licznik lub wstawić wartość jeden, jeśli słowa jeszcze nie ma.
Raportowanie
Raportowanie: należy wypisać łączną liczbę słów i liczbę unikalnych słów, a następnie wyświetlić N najczęściej występujących słów. W przypadku małych tekstów wystarczy prosta pętla wyboru.
Kod: pełne uruchomienie
Uruchom program: powinny zostać wyświetlone sumy, liczba unikalnych słów oraz lista najczęściej występujących słów. W przypadku dużych tekstów należy zastąpić wybieranie sortowaniem lub kopcem minimalnym.
public class Main {
public static void main(String[] args) {
// Implementation: normalize, tokenize, count, and print top 5.
String text = "Be yourself; everyone else is already taken. Be kind. Be clear.";
// 1) Lowercase
String lower = text.toLowerCase();
// 2) Replace non letters with spaces
String cleaned = lower.replaceAll("[^a-z]+", " ");
// 3) Split on spaces and filter empties
String[] tokens = cleaned.trim().split("\\s+");
java.util.Map<String, Integer> freq = new java.util.HashMap<>();
int total = 0;
for (int i = 0; i < tokens.length; i = i + 1) {
String w = tokens[i];
if (w.length() == 0) continue;
total = total + 1;
Integer c = freq.get(w);
if (c == null) freq.put(w, 1);
else freq.put(w, c + 1);
}
// Print top 5 words using repeated selection (simple for small data)
int topN = 5;
for (int k = 0; k < topN; k = k + 1) {
String bestWord = null;
int bestCount = -1;
for (java.util.Map.Entry<String,Integer> e : freq.entrySet()) {
String word = e.getKey();
int count = e.getValue();
if (count > bestCount) {
bestCount = count;
bestWord = word;
}
}
if (bestWord == null || bestCount < 0) break;
System.out.println("#" + (k + 1) + " " + bestWord + " = " + bestCount);
// mark as used so it will not be picked again
freq.put(bestWord, -1000000);
}
System.out.println("Total words: " + total);
System.out.println("Unique words: " + (freq.size()));
}
}
Sprawdzanie spójności
Szybkie sprawdzenie: Który krok jest niezbędny do spójnego zliczania niezależnie od wielkości liter i interpunkcji?
Podsumowanie
Podsumowanie: Zaimplementowano cały potok od początku do końca. Następnie zostaną przeprowadzone testy z przypadkami brzegowymi i rozważone proste rozszerzenia.
Często zadawane pytania
Czy lekcja „Implementacja” jest bezpłatna?
Tak — pełny tekst „Implementacja” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Java Academy, przejdź na CoddyKit PRO. Kurs Java Academy zawiera 3 lekcji w sumie.
Co nauczysz się w „Implementacja”?
Przekształcą Państwo plan w kod: znormalizują dane, podzielą je na tokeny, policzą wyniki i wyświetlą najważniejsze z nich w małych, czytelnych krokach. Ćwiczysz Java Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Java Academy?
Nie wymagamy żadnego doświadczenia. Java Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 3.
Ile czasu zajmuje lekcja „Implementacja”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Java Academy?
Tak. Każda lekcja Java Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Wymagania i projektowanie
- Implementacja
- Testowanie i rozszerzenia