- •8.Исключения: понятие исключения; классы исключений; необходимость обработки исключений.
- •9.Исключения: операторы языка Java, используемые для обработки исключений.
- •10.Исключения: организация обработки исключений; определение собственных исключений.
- •11.Ввод/вывод в Java: основные понятия.
- •12.Ввод/вывод в Java: основные группы классов и интерфейсов пакета java.Io.
- •13.Классификация программ по типу исполнения (компилируемые, интерпретируемые, исполняемые на виртуальных машинах). Виртуальная машина Java. Jit-компиляция.
- •14.Хранение данных в памяти эвм.
- •15.Приведение типов (явное и автоматическое). Константы и переменные.
- •16. Оператор присваивания. Порядок действий (приоритет операторов).
- •17. Арифметические операторы. Операторы инкремента и декремента.
- •18. Операторы сравнения и логические операторы.
- •19. Операторы ветвления. Условный оператор. Минимизация количества проверок.
- •Условный оператор if
- •Условный оператор if-else
- •20. Операторы ветвления. Оператор множественного выбора. Его сравнение с условным оператором.
- •21. Встроенный класс String. Строковые операции.
- •22. Стандартные потоки ввода-вывода. Организация ввода и вывода данных. Класс Scanner.
- •23. Операторы организации циклов. Цикл типа «n раз».
- •24. Операторы организации циклов. Цикл типа «пока» (с пред- и постпроверкой условия).
- •25. Массивы. Способы объявления и инициализации массивов. Индексация и размер массива.
- •26. Массивы. Алгоритмы сортировки.
- •27. Массивы. Многомерные массивы.
- •28. Статические методы классов. Методы функционального и процедурного типа.
- •29. Сигнатура метода. Перегрузка методов.
- •30. Процедурное программирование. Объектно ориентированное программирование. Сравнение парадигм.
- •31.Иерархия классов Java. Коренной класс Object и его методы.
- •32. Исключительные ситуации. Обработка исключительных ситуаций.
- •33. Приложения с графическим интерфейсом с использованием gui-пакетов и апплеты.
- •Локальные классы (local classes)
- •Объявление локальных классов
- •Доступ к переменным в локальных классах
- •Анонимные классы (Anonymous Classes)
- •Объявление анонимных классов
- •Синтаксис анонимных классов
- •Interface имя {
- •39.Типы-перечисления. Поля и методы типов-перечислений. Аннотации. Объявление типа аннотации и его использование. Аннотации для компилятора.
- •Синтаксис
- •Документация
- •Аннотации, используемые компилятором
- •Классы-коллекции
- •Интерфейсы-коллекции
- •Интерфейс Collection
- •Интерфейс List
- •Интерфейс Set
- •Интерфейс Queue
- •Иерархия классов-коллекций
- •Класс Vector
- •Класс ArrayList
- •Класс Stack
- •Паттерн проектирования Iterator
- •Класс LinkedList
- •Классы-множества
18. Операторы сравнения и логические операторы.
Операторы сравнения
Для того, чтобы можно было сравнивать два значения, в Java имеется набор операторов, описывающих отношение и равенство. Список таких операторов приведен в таблице.
Оператор |
Результат |
== |
равно |
!= |
не равно |
> |
больше |
< |
меньше |
>= |
больше или равно |
<= |
меньше или равно |
Значения любых типов, включая целые и вещественные числа, символы, логические значения и ссылки, можно сравнивать, используя оператор проверки на равенство == и неравенство !=. Обратите внимание - в языке Java, так же, как в С и C++ проверка на равенство обозначается последовательностью (==). Один знак (=) - это оператор присваивания.
Булевы логические операторы
Булевы логические операторы, сводка которых приведена в таблице ниже, оперируют только с операндами типа boolean. Все бинарные логические операторы воспринимают в качестве операндов два значения типа boolean и возвращают результат того же типа.
Оператор |
Результат |
Оператор |
Результат |
& |
логическое И (AND) |
&= |
И (AND) с присваиванием |
| |
логическое ИЛИ (OR) |
= |
ИЛИ (OR) с присваиванием |
^ |
логическое исключающее ИЛИ (XOR) |
^= |
исключающее ИЛИ (XOR) с присваиванием |
|| |
оператор OR быстрой оценки выражений (short circuit OR) |
== |
равно |
&& |
оператор AND быстрой оценки выражений (short circuit AND) |
!= |
не равно |
! |
логическое унарное отрицание (NOT) |
?: |
тернарный оператор if-then-else |
19. Операторы ветвления. Условный оператор. Минимизация количества проверок.
В логическом выражении могут использоваться следующие логические операторы: ==, !=,<=,>=,>,<, &&,||,! .
Рассмотрим на примере:
int a = 4;
int b = 5;
boolean result;
result = a == b // a равно b - false
result = a != b // a не равно b - true
result = a < b; // a меньше b - true
result = a > b; // a больше b - false
result = a <= 4 // a меньше или равно 4 - true
result = b >= 6 // b больше или равно 6 - false
result = a > b || a < b // (a больше b) логическое или (a меньше b) - true
result = 3 < a && a < 6 // (3 меньше a) логическое и(a меньше 6) - true
result = !result // логическое нет - false
Условный оператор if
Ели логическое выражение в скобках правдиво, то выполняется , блок кода в фигурных скобках {} после if. Если логическое выражение принимает значение false, то ничего не происходит.
if (a == b) {
//Если a равно b - выводим сообщение
System.out.println("a и b равны!");
}
Условный оператор if-else
Конструкция if-else отличается от предыдущей тем, что если логическое выражение в круглых скобках принимает значение false, то выполняется блок кода, находящийся в фигурных скобках после ключевого слова else
if (a == b) {
//Если a равно b - выводим сообщение
System.out.println("a и b равны!");
}
else{
//Если a не равно b - выводим сообщение
System.out.println("a и b не равны!");
}
Условный оператор switch — caseудобен в тех случаях, когда количество вариантов очень много и писать для каждого if-else очень долго. Конструкция имеет следующий вид :
switch (выражение) {
case значение1:
//блок кода 1;
break;
case значение2:
//блок кода 2;
break;
...
case значениеN:
//блок кода N;
break;
default:
блок N+1;
}
switch работает с такими примитивными типами данных как: byte, short, char, и int.