Mapy i zliczanie częstości
Poznają Państwo podstawy Map (put/get/remove), iterację po wpisach, licznik częstości słów oraz TreeMap do uzyskania posortowanego widoku.
Mapy i zliczanie częstości to bezpłatna lekcja Java Academy na CoddyKit. To lekcja 1 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.
Czym jest Map?
Map przechowuje pary klucz→wartość. Dobry wybór stanowią:
- HashMap: szybka, bez określonej kolejności.
- TreeMap: klucze są posortowane.
- LinkedHashMap: zachowuje kolejność dodawania.
Typowe operacje
Główne operacje:
- put(k,v), get(k), containsKey(k), remove(k)
- Rozmiar: size()
- Pętla: entrySet() pozwala uzyskać klucz i wartość.
Kod: podstawy Map
Klucze są unikatowe. Ponowne użycie klucza zastępuje przypisaną do niego wartość. Użyj entrySet(), aby iterować po wpisach.
public class Main {
public static void main(String[] args) {
java.util.Map<String, Integer> scores = new java.util.HashMap<>();
scores.put("Ada", 90);
scores.put("Bob", 75);
scores.put("Ada", 95); // replaces old value
System.out.println("Bob's score=" + scores.get("Bob"));
System.out.println("Has Ada? " + scores.containsKey("Ada"));
scores.remove("Bob");
for (java.util.Map.Entry<String, Integer> e : scores.entrySet()) {
System.out.println(e.getKey() + " -> " + e.getValue());
}
}
}
Pomysł na zliczanie częstotliwości
Zliczanie słów: Przejdź przez słowa i aktualizuj wynik za pomocą getOrDefault: map.put(w, map.getOrDefault(w,0)+1).
Kod: częstotliwość słów
getOrDefault upraszcza zliczanie. Każde słowo zwiększa bieżący licznik o 1.
public class Main {
public static void main(String[] args) {
String[] words = { "to", "be", "or", "not", "to", "be" };
java.util.Map<String,Integer> counter = new java.util.HashMap<>();
for (String w : words) {
int newVal = counter.getOrDefault(w, 0) + 1;
counter.put(w, newVal);
}
System.out.println(counter);
}
}
Kod: sortowanie TreeMap
TreeMap automatycznie sortuje klucze. To szybki sposób na wyświetlenie wyników w kolejności alfabetycznej.
public class Main {
public static void main(String[] args) {
java.util.Map<String,Integer> counts = new java.util.HashMap<>();
counts.put("banana",2);
counts.put("apple",3);
counts.put("cherry",1);
java.util.Map<String,Integer> sorted = new java.util.TreeMap<>(counts);
for (java.util.Map.Entry<String,Integer> e : sorted.entrySet()) {
System.out.println(e.getKey() + " -> " + e.getValue());
}
}
}
Sprawdzenie HashMap
Szybkie sprawdzenie: Które stwierdzenie dotyczące HashMap jest prawidłowe?
Podsumowanie
Podsumowanie: Map przechowuje pary klucz→wartość. Poznali Państwo operacje put/get/remove, zliczanie słów za pomocą getOrDefault oraz posortowane widoki z użyciem TreeMap.
Często zadawane pytania
Czy lekcja „Mapy i zliczanie częstości” jest bezpłatna?
Tak — pełny tekst „Mapy i zliczanie częstości” 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 „Mapy i zliczanie częstości”?
Poznają Państwo podstawy Map (put/get/remove), iterację po wpisach, licznik częstości słów oraz TreeMap do uzyskania posortowanego widoku. Ć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 1 z 3.
Ile czasu zajmuje lekcja „Mapy i zliczanie częstości”?
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
- Mapy i zliczanie częstości
- Comparable a Comparator
- Sortowanie i wyszukiwanie z Collections