Что такое выражения программирования Java?

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

Разница между утверждениями Java и выражениями

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

Например,

(* 2)
это выражение.
б + (а * 2);
это утверждение. Вы могли бы сказать, что выражение - это предложение, а выражение - законченное предложение, поскольку оно образует полную единицу выполнения.

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

(* 2);
instagram viewer

Типы выражений

Хотя выражение часто дает результат, это не всегда. В Java есть три типа выражений:

  • Те, которые производят значение, то есть результат
    (1 + 1)
  • Те, которые назначают переменную, например
    (v = 10)
  • Те, которые не имеют результата, но могут иметь «побочный эффект», потому что выражение может включать в себя широкий диапазон такие элементы, как вызовы методов или операторы приращения, которые изменяют состояние (т. е. память) программа.

Примеры выражений

Вот несколько примеров различных типов выражений.

Выражения, которые производят значение

Выражения, которые создают значение, используют широкий спектр арифметических, сравнительных или условных операторов Java. Например, арифметические операторы включают +, *, /, , ++ и%. Несколько условные операторы?? ||, а операторы сравнения: . Увидеть Спецификация Java для полного списка.

Эти выражения производят значение:

3/2
5% 3
пи + (10 * 2)

Обратите внимание на скобки в последнем выражении. Это заставляет Java сначала вычислить значение выражения в скобках (точно так же, как арифметику, которую вы изучали в школе), а затем завершить остальную часть вычисления.

Выражения, которые назначают переменную

Эта программа содержит множество выражений (выделено жирным курсивом), каждому из которых присваивается значение.

 ИНТ secondsInDay = 0;

ИНТ
daysInWeek = 7;

ИНТ
hoursInDay = 24;

ИНТ
minutesInHour = 60;

ИНТ
secondsInMinute = 60; 

логический
CalculateWeek = true;

secondsInDay = secondsInMinute * minutesInHour * hoursInDay; //7

System.out.println (
"Количество секунд в дне:" + secondsInDay);

если (
рассчитать неделю == правда)

{
System.out.println (
«Количество секунд в неделе:» + secondsInDay * daysInWeek); 

}

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

Строка, обозначенная // 7, является выражением, которое может стоять само по себе как выражение. Это также показывает, что выражения могут быть созданы с использованием более чем одного оператора. Окончательное значение переменной secondsInDay является кульминацией оценки каждого выражения по очереди (т. Е. SecondsInMinute * minutesInHour = 3600, за которым следует 3600 * hoursInDay = 86400).

Выражения без результата

Хотя некоторые выражения не дают результата, они могут иметь побочный эффект, который возникает, когда выражение меняет значение любого из его операнды.

Например, считается, что определенные операторы всегда вызывают побочный эффект, например операторы присваивания, увеличения и уменьшения. Учти это:

int product = a * b;

Единственная переменная, измененная в этом выражении продукт; и б не изменены. Это называется побочным эффектом.