- •Содержание
- •Введение
- •1. Основные понятия языка Java иUml
- •Простое приложение
- •Простой апплет
- •Классы и объекты
- •Базовые типы данных
- •Операторы
- •If (obj instanceof java.Awt.Font) {/*операторы*/}
- •Операторы управления
- •UmLкак язык описания объектно-ориентированных программ
- •2. Библиотека стандартаJava_se Наследование
- •Использование super и this
- •Абстрактные классы и интерфейсы
- •Переопределение методов
- •Перегрузка методов
- •Полимофизм и расширяемость
- •Статические методы и полиморфизм
- •Внутренние (inner) классы
- •Вложенные классы (nested)
- •Анонимные классы
- •Использование библиотек классов Файлы. Потоки ввода/вывода
- •Обработка исключительных ситуаций
- •Коллекции
- •Графические интерфейсы пользователя
- •События и их обработка
- •Элементы управления
- •2. Библиотека стандартаJava_ee
- •ТехнологииJsp
Операторы
Операции над целыми числами: +, , *, %, /, ++,--и битовые операции&, |, ^, ~аналогичны операциям большинства языков программирования. Деление на ноль целочисленного типа вызывает исключительную ситуацию, переполнение неконтролируется.
Операции над числами с плавающей точкой практически те же, что и в других языках, но по стандарту IEEE 754 введены понятие бесконечности +infinityи–infinityи значениеNaN(Not a Number), которое может быть получено, например, при извлечении квадратного корня из отрицательного числа.
Арифметические операторы
+ |
Сложение |
/ |
Деление |
+= |
Сложение (с присваиванием) |
/= |
Деление (с присваиванием) |
|
Бинарное вычитание и унарное изменение знака |
% |
Деление по модулю |
= |
Вычитание (с присваиванием) |
%= |
Деление по модулю (с присваиванием) |
* |
Умножение |
++ |
Инкремент |
*= |
Умножение (с присваиванием) |
-- |
Декремент |
Битовые операторы
| |
Или |
>> |
Сдвиг вправо |
|= |
Или(с присваиванием) |
>>= |
Сдвиг вправо (с присваиванием) |
& |
И |
>>> |
Сдвиг вправо с появлением нулей |
&= |
И(c присваиванием) |
>>>= |
Сдвиг вправо с появлением нулей и присваиванием |
^ |
Исключающее или |
<< |
Сдвиг влево |
^= |
Исключающее или (cприсваиванием) |
<<= |
Сдвиг влево с присваиванием |
~ |
Унарное отрицание |
|
|
Операторы отношения
< |
Меньше |
> |
Больше |
<= |
Меньше либо равно |
>= |
Больше либо равно |
== |
Равно |
!= |
Не равно |
Применяются для сравнения символов, целых и вещественных чисел, а также для сравнения ссылок при работе с объектами.
Логические операторы
|| |
Или |
&& |
И |
! |
Унарное отрицание |
|
|
К операторам относится также оператор определения принадлежности типу instanceof, оператор[ ] и тернарный оператор?:(if-then-else).
Логические операции выполняются над значениями типа boolean (trueилиfalse).
// пример # 3 : битовые операторы : Operators.java
public class Operators {
public static void main(String[] args) {
System.out.println("5%1=" + 5%1 + " 5%2=" + 5%2);
int b1 = 0xe;//14 или 1110
int b2 = 0x9;//9 или 1001
int i = 0;
System.out.println(b1 + "|" + b2 + " = " + (b1|b2));
System.out.println(b1 + "&" + b2 + " = " + (b1&b2));
System.out.println(b1 + "^" + b2 + " = " + (b1^b2));
System.out.println( "~" + b2 + " = " + ~b2);
System.out.println(b1 + ">>" + ++i + " = " + (b1>>i));
System.out.println(b1 + "<<" + i + " = " + (b1<<i++));
System.out.println(b1 + ">>>" + i +" = " + (b1>>>i));
}
}
Результатом выполнения данного кода будет
5%1=0 5%2=1
14|9 = 15
14&9 = 8
14^9 = 7
~9 = -10
14>>1 = 7
14<<1 = 28
14>>>2 = 3
Тернарный оператор "?" используется в выражениях:
booleanexp ? value0 : value1
Если booleanexp = true, вычисляется значениеvalue0 и оно становится результатом выражения, иначе результатом является значениеvalue1.
Оператор instanceofвозвращает значениеtrue, если объект является экземпляром данного класса,например:
Font obj = new Font("Courier", 1, 18);