Ключевой момент: инструкция присваивания указывает значение для переменной. В Java инструкция присваивания может использоваться как выражение.
Инструкция присваивания, оператор присваивания
После объявления переменной, вы можете присвоить ей значения используя инструкцию присваивания. В Java знак равенства (=) используется как оператор присваивания. Синтаксис инструкции присваивания следующий:
переменная = выражение;
Выражение
Выражение представляет собой числа, переменные и операторы, которые, взятые вместе, сводятся к определённому числу. Например, рассмотрим следующий код:
int y = 1; // Назначить 1 переменной y double radius = 1.0; // Назначить 1.0 переменной radius int x = 5 * (3 / 2); // Присвоить значение выражения переменной x x = y + 1; // Присвоить сумму y и 1 переменной x double area = radius * radius * 3.14159; // Вычисление area
В выражениях вы можете использовать переменные. Переменная также может использоваться с обоих сторон оператора =. Например:
x = x + 1;
В этой инструкции присваивания, результат x + 1 присваивается x. Если перед выполнением инструкции x равен 1, тогда после выполнения инструкции он становится равным 2.
Для присваивания значения переменной, вы должны разместить имя этой переменной слева от оператора присваивания. Таким образом, следующее утверждение неверно:
1 = x; // Неправильно
Помните: в математике x = 2 * x + 1 означает уравнения. Тем не менее, в Java, x = 2 * x + 1 это инструкция присваивания, которая вычисляет выражение 2 * x + 1 и присваивает результат x.
Выражение присваивания
В Java, инструкция присваивания по существу является выражением, которое сводится к значению, присваиваемому левой части оператора присваивания. По этой причине инструкция присваивания также известна как выражение присваивания. Например, следующая инструкция является корректной:
System.out.println(x = 1);
Она эквивалентна
x = 1; System.out.println(x);
Если значение присваивается нескольким переменным, вы можете использовать следующий синтаксис:
i = j = k = 1;
Который эквивалентен:
k = 1; j = k; i = j;
Помните: в инструкции присваивания, тип данных переменной в левой части должен быть совместимым с типом данных значения в правой. Например, int x = 1.0 будет неправильным, поскольку тип данных x это int (целые числа). Вы не можете присвоить значение double (1.0) к переменной int без смены типа. Смена типов будет представлена немного позже.
Проверь себя:
Найдите и исправьте ошибки в следующем коде:
public class Test { public static void main(String[] args) { int i = j = k = 2; System.out.println(i + " " + j + " " + k); } }