Программирование мобильных телефонов на Java


          Что бы получить аттестат за 10 класс читайте описание на сайте продавца   Ford Taurus   

Операторы



Операторы языка Java имеют различные назначения. Существуют арифметические операторы, операторы инкремента и декремента, логические операторы и операторы отношения.

Арифметические операторы очень просты и аналогичны операторам умножения «*», деления «/», сложения «+» и вычитания «-» используемые в математике. Существует оператор деления по модулю «%» и слегка запутанная на первый взгляд ситуация с оператором равно «=». Оператор равно в языках программирования называется оператором присваивания:

int х = 3


Здесь вы переменной х присваиваете значение 3. А оператор «равно» в языках программирования соответствует записи двух подряд операторов «равно»: <= = >. Рассмотрим на примере, что могут делать различные арифметические операторы.

int х, у, z; ;
х = 5;
У = 3 ;
Z = 0;
z = х + у;


В данном случае z будет иметь значение уже суммы х и у, то есть 8.

x = z*x;


Переменная х имела значение 5, но после такой записи предыдущее значение теряется и записывается произведение z *х (8*5), что равно 40. Теперь, если мы продолжим дальше наш код, то переменные будут иметь такой вид:

// х = 40;
 // У = 3 ;
// z = 8;


Это обязательно необходимо иметь в виду.

Что касается оператора деления, то поскольку Java 2 ME не поддерживает дробных чисел, то результат такого деления:

x = z/y;


что равносильно записи:

х = 8/3;


будет равен 2. Дробная часть просто отбрасывается, то же самое происходит при использовании оператор деления по модулю «%».

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

Операторы декремента «—» и инкремента «++» весьма специфичны, но очень просты. В программировании часто встречаются моменты, когда требуется увеличить или уменьшить значение на единицу. Часто это встречается в циклах. Операция инкремента увеличивает переменную на единицу.

int x = 5;
х++;
// Здесь х уже равен 6


Операция декремента уменьшает переменную на единицу.

int х = 5;
х -- ;
//х равен 4


Операции инкремента и декремента могут быть пост и префиксными:

int х = 5;
int у = 0;
y = х++;


8 последней строке кода сначала значение х присваивается у, это значение 5, и только потом переменная х увеличивается на еденицу. Получается что:

х = 6, у = 5


Префиксный инкремент имеет вид:

int х = 3;
int у = 0;
у = ++х;


И в этом случае, сначала переменная х увеличивается на один, а потом присваивает уже увеличенное значение у.

у = 4, х = 4


Операторы отношения позволяют проверить равенство обеих частей выражения. Имеется оператор равенства «= =», операторы меньше «<» и больше «>», меньше или равно «<=» и больше или равно «>=», а так же оператор отрицания «!=».

9 = = 10;


Это выражение не верно, девять не равно десяти, поэтому его значение этого выражения равно false.

9 != 10;


Здесь же, наоборот, оператор отрицания указывает на неравенство выражения, и значение будет равно true.

Операторы больше, меньше, больше или равно и меньше или равно аналогичны соответствующим операторам из математики.

Существует два логических оператора. Оператор «И», обозначающийся значками «&&» и оператор «ИЛИ», обозначенный в виде двух прямых слешей «||». Например, имеется выражение:

А*В && В*С;


В том случае, если только обе части выражения истинны, значение выражения считается истинным. Если одна из частей неверна, то значение всего выраже- , ния будет ложным.

В противовес оператору «&&» имеется оператор «I I », не напрасно имеющий название «ИЛИ».

А*В|| В*С;


Если любая из частей выражения истинна, то и все выражение считается истинным. Оба оператора можно комбинировать в одном выражении, например:

А*В || B*C && C*D ||В*А;


С помощью этого выражения я вас ввел, как мне кажется, в затруднение, неправда ли? Дело в том, что в Java, как и в математике существует приоритет или так называемая иерархия операторов, с помощью которой определяется какой из операторов главнее, а, следовательно, и проверяется первым. Рассмотрим с помощью списка приоритет всех операторов языка Java:

[] , . , () ,
! , ~, ++, - -, +(унарный), -(унарный), new,
*, /, % ,
+, -,
<< , >>, >>>,
<, <=, >, >=, = = , !=,
&,  ^,  | , &&, || , ?:,
= , +=, -=, *=, /=, %=, |=, ^=, <<=, >>=, >>>=.


Не со всеми операторами вы еще знакомы, поэтому пугаться не стоит. Ассоциативность операторов в списке следует слева на право и сверху вниз. То есть все, что находится левее и выше - старше по званию и главнее.

Назад    Содержание    Вперед