Содержание
- Общие понятия
- Интерфейсы
- Параметры типов
- Равенство и equals()
- Хэширование и hashCode()
- Списки
- Класс ArrayList
- Класс LinkedList
- Интерфейс List
- Arrays.asList
- Добавление и удаление элементов
- Индексированный доступ
- Итерация
- Множества
- Класс (Linked)HashSet
- Интерфейс Set
- Добавление и удаление элементов
- Итерация
- Коллекции
- Отображения
- Класс (Linked)HashMap
- Класс TreeMap
- Интерфейс Map
- Отображения как ассоциативные массивы
- Упорядоченные коллекции
- Сравнение и compareTo(..)
- Компараторы
- Класс TreeSet и интерфейс NavigableSet
- Класс TreeMap и интерфейс NavigableMap
Домашнее задание 6. Статистика слов++
-
Разработайте класс
Wspp
, который будет подсчитывать статистику встречаемости слов во входном файле. -
Словом называется непрерывная последовательность букв,
апострофов (
'
) и дефисов (Unicode category Punctuation, Dash). Для подсчета статистики слова приводятся к нижнему регистру. - Выходной файл должен содержать все различные слова, встречающиеся во входном файле, в порядке их появления. Для каждого слова должна быть выведена одна строка, содержащая слово, число его вхождений во входной файл и номера вхождений этого слова среди всех слов во входном файле.
- Имена входного и выходного файла задаются в качестве аргументов командной строки. Кодировка файлов: UTF-8.
- Программа должна работать за линейное от размера входного файла время.
- Для реализации программы используйте Collections Framework.
- Сложный вариант.
Реализуйте и примените класс
IntList
, компактно хранящий список целых чисел. -
Примеры работы программы:
Входной файл Выходной файл To be, or not to be, that is the question:
to 2 1 5 be 2 2 6 or 1 3 not 1 4 that 1 7 is 1 8 the 1 9 question 1 10
Monday's child is fair of face. Tuesday's child is full of grace.
monday's 1 1 child 2 2 8 is 2 3 9 fair 1 4 of 2 5 11 face 1 6 tuesday's 1 7 full 1 10 grace 1 12
Шалтай-Болтай Сидел на стене. Шалтай-Болтай Свалился во сне.
шалтай-болтай 2 1 5 сидел 1 2 на 1 3 стене 1 4 свалился 1 6 во 1 7 сне 1 8
Примеры
zipПрактические навыки
- Базовые навыки в использовании стандартных коллекций