- •Понятие потока данных в Java. Типы потоков.
- •Общая схема записи данных в поток и чтения данных из потока.
- •Байтовый поток: свойства, связь потока с файлом, чтение и запись, закрытие.
- •Потоки символов: свойства, связь потока с файлом, чтение и запись, закрытие.
- •Поток строк: свойства, связь потока с файлов, чтение и запись, закрытие.
- •Исключения при работе с потоками.
- •Понятие рекурсии. Рекурсивное вычисление факториала.
- •Понятие рекурсии. Рекурсивное вычисление суммы элементов массива.
- •Понятие рекурсии. Рекурсивное вычисление максимума в массиве.
- •Формулировка задачи о Ханойских башнях.
- •Применение рекурсии при определении связного списка.
- •Понятие списка. Объявление элемента списка.
- •Структура объявления элемента двусвязного списка.
- •Типовые операции для односвязных списков.
- •Кольцевой и двусвязный списки: отличия от односвязного списка.
- •Порядок добавление элемента в односвязный список.
- •Рекурсивный и итерационный метод обработки списка (на примере печати списка)
- •Коллекции: множества – основные элементы интерфейса Set.
- •Структура простейшего гип-приложения.
- •Цвет в гип. Конструкторы и цветовые константы класса.
- •Кнопка. Состояние кнопки. События кнопки, их обработка и идентификация.
- •Структура программы, имеющей интерфейс с двумя кнопками.
- •Элемент интерфейса «условие» («флажок»), его конструкторы и обработка событий.
- •Элемент интерфейса «радиокнопка», его конструкторы и обработка событий радиокнопок.
Порядок добавление элемента в односвязный список.
Номера на стрелках соответствуют порядку действий по включению нового элемента в список: 1 – поле связи «головы» списка сохраняется в рабочей переменной; 2 – значение ссылки на новый элемент, данное операцией new, помещается в область связи «головы»; 3 – значение ссылки из рабочей переменной копируется в область связи нового элемента. В списке появился новый элемент, на который указывает голова.
Рекурсивный и итерационный метод обработки списка (на примере печати списка)
Итерационный метод:
public static void printMyList ( Node с ) { //напечатать список
while( c !=null ) { // если список существует,
System.out.print( c.inf+ " "); //напечатать информационную часть
c=c.next; //и перейти по связи к следующему
}; //while
} //printMyList
Рекурсивный
public static void printMyList ( Node с ) { //напечатать список
if( c !=null ) { // если список существует,
System.out.print( c.inf+ " "); //напечатать информационную часть
printMyList(c.next); //и напечатать остаток
}; //if
} //printMyList
Основные типы коллекций, имеющиеся в Java Collection Framework.
Сollection List, Set, Queue SortedSet, MapSortedMap
Составные части JCF и их назначение.
Назначение интерфейсов и алгоритмов JCF.
Коллекции: списки – основные методы интерфейса List.
Методы базового интерфейса Collection (полный список см. в документации)
Интерфейс Collection – базовый для интерфейсов List (списки), Set
(множества) и SortedSet (множества с порядком). Интерфейсы List и SortedSet
содержат дополнительные методы, упрощающие некоторые действия.
boolean add(E e) добавляет e типа E в коллекцию, true, если добавление удалось.
boolean addAll(Collection<? extends E> c) добавляет в данную коллекцию все элементы
коллекции c ( thisthisc ). Тип элементов из c должен быть расширением типа Е.
void clear() удаляет все элементы коллекции.
boolean contains(Object o) проверка принадлежности o коллекции (othis ).
boolean containsAll(Collection<?> c) проверка включения коллекции с в данную
коллекцию (c this ).
boolean equals(Object o) проверяет равенство элемента коллекции объекту o.
boolean isEmpty() проверяет, что коллекция пуста.
Iterator<E> iterator() создает итератор для перебора элементов коллекции.
boolean remove(Object o) удаляет элемент o из коллекции, true, если удалось.
boolean removeAll(Collection<?> c) удаляет из данной коллекции все элементы коллекции c
( this this \ c ).
boolean retainAll(Collection<?> c) оставляет в данной коллекции только те элементы,
которые содержатся в коллекции c ( thisthisc ).
int size() дает количество элементов коллекции.
Object[] toArray() возвращает массив, содержащий все элементы коллекции.
Дополнительные методы интерфейса List:
add (index, element) – добавить элемент в заданном месте, get(index) – получить копию
элемента в заданном месте, set(index,element) – изменить элемент в заданном месте,
indexOf(element) – найти место элемента (просмотр слева), lastIndexOf(element) – найти
место элемента (просмотр справа), remove(index) – удалить элемент из заданного места,
subList(start,end) – создать подсписок, listIterator(index) – итератор с возможностью
перемещения с заданного элемента в прямом или обратном направлении.
