Комментарии (18)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Tyrant10 уровень
5 февраля, 14:20
Tyrant10 уровень
3 декабря 2018, 19:37
Tyrant10 уровень
17 декабря 2018, 14:46
Используйте исключения для того, чтобы:
- обработать ошибку на текущем уровне (избегайте перехватывать исключения,
  если не знаете, как с ними поступить);
- исправить проблему и снова вызвать метод, возбудивший исключение
- предпринять все необходимые действия и продолжить выполнение без
  повторного вызова действия;
- попытаться найти альтернативный результат вместо того, который должен
  был бы произвести вызванный метод;
- сделать все возможное в текущем контексте и заново возбудить это
  же исключение, перенаправив его на более высокий уровень;
- сделать все, что можно в текущем контексте, и возбудить новое исключение,
  перенаправив его на более высокий уровень;
- завершить работу программы;
- упростить программу (если используемая схема обработки исключений
  делает все только сложнее, значит, она никуда не годится);
- добавить вашей библиотеке и программе безопасности;
Tyrant10 уровень
3 декабря 2018, 15:38
Tyrant10 уровень
3 декабря 2018, 10:38
Tyrant10 уровень
15 ноября 2018, 15:40
Java — Дата и время: Методы класса Date. Форматирование даты с помощью printf. Задержка по времени. Время выполнения программы. Разница дат в Java. Количество дней между датами. Класс GregorianCalendar. Форматирование даты в Java. SimpleDateFormat,
Tyrant10 уровень
13 ноября 2018, 14:54
О выборе структур данных для начинающих: Часть 1. Линейные структуры: Массив(Array). Динамический массив(ArrayList). Связные списки(LinkedList). Часть 2. Линейные структуры данных с конечными точками: Очередь с приоритетом(PriorityQueue). Часть 4. Нелинейные структуры данных: Словарь данных(HashMap). Упорядоченное(TreeSet, LinkedHashSet) и неупорядоченное(HashSet) множество. HashMap в картинках. Часть 5. Правильный выбор структур данных. Сортировка массивов/списков методом compareTo();
Tyrant10 уровень
12 ноября 2018, 14:42
Отличия абстрактного класса от интерфейса:
Tyrant10 уровень
7 января, 18:56
Отношение статических/не статических методов/полей между собой:
Tyrant10 уровень
5 ноября 2018, 15:53
Java Collections расширяют интерфейс Iterable. List, Set и Queue поддерживают итератор. Для java Map iterator также поддерживается, но его необходимо вызывать для Map.entrySet(): Map<String, Integer> map = new HashMap<>(); Iterator mapIterator = map.entrySet().iterator(); Дальше все аналогично с List: while (mapIterator.hasNext()) { Map.Entry<String, Integer> entry = mapIterator.next(); System.out.println("Key: " + entry.getKey()); System.out.println("Value: " + entry.getValue()); } Паттерн — это шаблон проектирования, некое поведение, которого должен придерживаться класс или множество взаимосвязанных классов. Интерфейс итератор – частная реализация одноименного паттерна, применяемая как к готовым структурам (List, Set, Queue, Map), так и к прочим, на усмотрение программиста. Расширяя интерфейс Iterator, ты реализуешь паттерн, но для реализации паттерна не обязательно расширять интерфейс. Почитать про паттерн итератор позже То же про паттерн итератор. Не сегодня.
Tyrant10 уровень
5 ноября 2018, 15:47
Iterator - если по-простому, то это метод, с помощью которого получается следующий элемент коллекции - ну, как бы некое правило обхода элементов коллекции/массива данных. Формально это интерфейс Iterator, который содержит 3 метода: hasNext() - проверяет, есть ли следующий элемент; next() - возвращает следующий элемент; remove() - удаляет текущий элемент. Пример итератора с while:
Iterator<Integer> iterator = set.iterator();
while (iterator.hasNext())  {
       Integer element = iterator.next();
       if (element < 5)  {
           iterator.remove();
       }
}
Пример итератора с for:
for(Iterator<Integer> iter = set.iterator(); iter.hasNext();)  {
       Integer element = iter.next();
       if (element < 5)  {
           iter.remove();
       }
}