Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
java / Java_Intro1_220509.pdf
Скачиваний:
251
Добавлен:
11.05.2015
Размер:
1.71 Mб
Скачать

буквами). Если имя составное, то каждая входящая часть также начинается с прописной буквы.

Пример:

summa, perFass, i, j, greenLan

Имена констант в Java принято обозначать идентификаторами набранными в верхнем регистре (прописными буквами). Если имя составное, то каждая входящая часть начинается с символа подчеркивания «_».

Пример:

MAX_VALUE, SERT_VAL

2.6. Выражения и операторы

Выражения — это последовательность, состоящая из операндов, разделителей, знаков операций и задающая вычисление. Наиболее простые выражения называют первичными выражениями. Первичные выражения строятся из литералов и переменных.

Пример:

MAX_VAL

//

константа

true

//

булевый литерал

i// переменная

1.23E+105 // литерал с плавающей точкой

Сложные выражения строятся путем объединения первичных выражений с помощью операторов.

Пример:

i=1; fr=(1+MAX_VAL*summa)/(21*egf);

dsFasd=1+summa/12;

Оператор — это набор символов, который указывает интерпретатору Java, какие действия необходимо выполнить над одним или несколькими операндами. Для обозначения действий оператора обычно используются символы операций, которые он выполняет. В качестве операндов используются первичные выражения (переменные, константы, литералы).

Операторы, которые используют только один операнд называют

унарными операторами.

Пример:

Операторы стоящие перед операндами префиксные, после операндов — постфиксные, и между операндами — инфиксные.

Все типы операторов подразделяются на четыре основных группы:

логические (булевы) операторы;

битовые;

операторы отношений;

арифметические операторы;

2.6.1. Логические операторы

Логические (булевы) операторы предназначены для выполнения логических операций над булевыми переменными (табл. 7).

 

 

 

Та блица 7

 

Логические операторы

 

 

Оператор

Описание

Пример

Результат

&&

 

Bool1&&bool

Дает истину

в

случае

Логическое «И»

истинности

 

обоих

&&=

 

2

операндов

 

 

||

Логическое

Bool1||

Дает истину

в

случае

истинности

одного из

||=

«ИЛИ»

bool2

операндов

 

 

^

Логическое

 

Дает истину

в

случае

«Исключающее

Bool1^bool2

различности

значений

^=

ИЛИ»

 

соседних операндов

!

Логическое

!bool2

Дает истину

в

случае

!=

отрицание «НЕ»

ложности операнда

2.6.2. Целочисленные битовые операторы

Битовые операторы предназначены для работы с отдельными битами значений переменных типа byte, int, char, long (табл. 8). Операторы битовой арифметики работают с каждым битом, как с самостоятельной величиной.

Та блица 8

 

Целочисленные битовые операторы

Оператор

Описание

 

 

Пример

&

Побитовое

«И»

a&b

&=

(AND)

 

 

a&=b

|

Побитовое

 

 

a|b

|=

«ИЛИ» (OR)

 

 

a|=b

^

Логическое

 

 

a^b

^=

«Исключающее

 

a^=b

 

ИЛИ»(XOR)

 

 

 

>>

Сдвиг вправо

 

 

a>>b

>>=

 

 

 

a>>=b

<<

Сдвиг влево

 

 

a<<b

<<=

 

 

 

a<<=b

>>>

Сдвиг вправо

с

a>>>b

>>>=

заполнением

 

 

a>>>=b

 

нулями

 

 

 

~

Побитовое

 

 

~a

отрицание

 

 

Пример побитовых преобразований

Та блица 9

 

 

 

 

a

 

b

 

a&b

a|b

a^b

 

~a

0

0

 

0

 

0

0

 

1

1

0

 

0

 

1

1

 

0

0

1

 

0

 

1

1

 

1

1

1

 

1

 

1

0

 

0

Сдвиг влево

Оператор << выполняет сдвиг влево всех битов своего левого операнда на количество позиций указанных в правом операнде. Часть битов выходящая за левою границу переменной теряется, а правая часть соответственно заменяется нулями.

Сдвиг вправо

Оператор >> выполняет сдвиг вправо всех битов своего левого операнда на количество позиций указанных в правом операнде. Часть битов выходящая за правую границу переменной теряется, а левая часть соответственно заменяется предыдущим содержимым (расширение знакового разряда). Бит знака при этих действиях сохраняется.

Беззнаковый сдвиг вправо

Оператор >>> выполняет сдвиг вправо всех битов своего левого операнда на количество позиций указанных в правом операнде. Часть битов выходящая за правую границу переменной теряется, а левая

часть соответственно

заменяется нулями. Бит знака при этих

действиях сохраняется.

 

Для формирования условий в различных конструкциях Java используются операторы отношения (табл. 10). Применяются к операндам целого, вещественного, и символьного типа. Результат выполнения оператора отношения имеет булевый тип.

 

Операторы отношения

Таблица 10

 

 

Оператор

Описание

Пример

==

Равно

a==b

!=

Не равно

a!=b

>

Больше

a>b

<

Меньше

a<b

>=

Больше либо равно

a>=b

<=

Меньше либо равно

a<=b

instanceof

Принадлежность экземпляра к

h1

instanceof

классу

Human

 

 

 

2.6.3. Арифметические операторы

Арифметические операторы предназначены для выполнения арифметических операций над числовыми данными (табл. 11). Также допустимо в качестве операндов использовать данные типа char.

Та блица 11

 

 

Арифметические операторы

 

+

Оператор

СложениеОписание

a+b

Пример

-

 

Вычитание

a-b

 

*

 

Умножение

a*b

 

/

 

Деление

a/b

 

%

 

Остаток от деления

a%b

 

=

 

Присваивание

x=y

 

++

 

Инкремент

i++

 

--

 

Декремент

i--

 

+=

 

 

y+=x ~ y=y+x

-=

 

 

y-=x ~ y=y-x

*=

 

 

y*=x ~ y=y*x

/=

 

 

y/=x ~ y=y/x

%=

 

 

y%=x ~ y=y%x

Оператор инкремента

Важным отличием в операторах современных языков программирования операторов: ++, --, +=, -=, *=, /=

Java, C++, C# от других заключается в присутствии и %=, которые позволяют

увеличивать или уменьшать операнд на единицу, а так же производить основные операции до оператора присваивания.

Унарная операция ++ увеличивает операнд на единицу и называются в Java инкрементом. Операция -- называется декрементом, и приводит к уменьшение операнда на единицу. Соответствующий оператор может находится в выражении перед или после операнда, и в зависимости от местоположения будет находится в инфиксной или постфиксной форме (инкремента/декремента).

Пример:

if (b==2) { a=b++

} else { a=++b

}

На примере представлены два варианта операции инкремента. В первом случае, когда условие выполнено (b=2), переменной a присваивается значение переменной b (a=b), а затем переменная b

Соседние файлы в папке java