0Pricing
Java Academy · Урок

Реализация

Превратите план в код: нормализуйте данные, разбейте текст на элементы, подсчитайте результаты и выведите самые частотные с помощью небольших понятных шагов.

«Реализация» — бесплатный урок Java Academy на CoddyKit. Это урок 2 из 3. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Java Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Java Academy содержит 3 уроков всего.

Повторение плана

Повторение плана: перевести текст в нижний регистр, удалить пунктуацию, разделить на элементы, подсчитать с помощью карты, затем вывести итоги и N наиболее частотных слов. Делайте каждый шаг небольшим и понятным.

Нормализация

Нормализация: приведите текст к нижнему регистру и замените все символы, кроме букв, пробелами. Это предотвращает появление отдельных токенов для Be и be, а также удаляет запятые и точки.

Токенизация

Токенизация: разделите текст по пробельным символам, чтобы получить чистые слова. Сначала удалите пробелы с краёв, чтобы первый токен не оказался пустым.

Подсчёт

Подсчёт: используйте HashMap, где слову соответствует его количество. Для каждого токена увеличивайте счётчик или добавляйте значение 1, если слово ещё отсутствует.

Формирование отчёта

Формирование отчёта: выведите общее количество и количество уникальных слов, а затем перечислите N самых частотных слов. Для небольших текстов достаточно простого цикла выбора.

Код: полный запуск

Запустите программу: Вы должны увидеть общее количество, количество уникальных слов и список самых частотных слов. Для больших текстов замените выбор сортировкой или минимальной кучей.

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()));
  }
}

Проверка согласованности

Быстрая проверка: Какой этап необходим для согласованного подсчёта независимо от регистра и знаков препинания?

Повторение

Повторение: Вы реализовали весь конвейер от начала до конца. Далее мы протестируем его на граничных случаях и рассмотрим простые расширения.

Часто задаваемые вопросы

Урок «Реализация» бесплатный?

Да — полный текст урока «Реализация» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Java Academy, подпишись на CoddyKit PRO. Курс Java Academy содержит 3 уроков всего.

Чему я научусь в уроке «Реализация»?

Превратите план в код: нормализуйте данные, разбейте текст на элементы, подсчитайте результаты и выведите самые частотные с помощью небольших понятных шагов. Ты практикуешь Java Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Java Academy?

Предыдущий опыт не требуется. Java Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 3.

Сколько времени занимает урок «Реализация»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Java Academy?

Да. Каждый урок Java Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Требования и проектирование
  2. Реализация
  3. Тестирование и расширения
← Назад к Java Academy