Какво представляват програмните изрази на Java?

Изразът е съществен градивен елемент на всяка Java програма, обикновено създадена за създаване на нова стойност, въпреки че понякога изразът приписва стойност на променлива. Изразът се изгражда с помощта на стойности, променливи, оператори и обаждания с методи.

Разлика между Java изрази и изрази

По отношение на синтаксиса на езика на Java, израз е близък до a клауза на английски език което изобразява конкретно значение. С правилната пунктуация понякога може да стои самостоятелно, въпреки че може да бъде и част от изречение. Някои изрази се равняват на изрази сами по себе си (чрез добавяне на запетая в края), но по-често те съдържат част от изявление.

Например,

(a * 2)
е израз.
b + (a * 2);
е изявление. Бихте могли да кажете, че изразът е клауза, а изказването е цялото изречение, тъй като образува пълната единица за изпълнение.

Изявление обаче не трябва да включва множество изрази. Можете да превърнете прост израз в израз, като добавите точка и запетая:

(a * 2);

Видове изрази

Докато един израз често дава резултат, той не винаги. В Java има три типа изрази:

instagram viewer
  • Тези, които произвеждат стойност, т.е. резултат от
    (1 + 1)
  • Тези, които присвояват променлива, например
    (v = 10)
  • Тези, които нямат резултат, но могат да имат "страничен ефект", защото изразът може да включва широк спектър от елементи като извиквания на метод или оператори на инкременти, които променят състоянието (т.е. паметта) на a програма.

Примери за изрази

Ето няколко примера за различни видове изрази.

Изрази, които произвеждат стойност

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

Тези изрази произвеждат стойност:

3/2
5% 3
pi + (10 * 2)

Забележете скобите в последния израз. Това насочва Java първо да изчисли стойността на израза в скобите (точно както аритметиката, която сте научили в училище), след това завършете останалата част от изчисленията.

Изрази, които присвояват променлива

Тази програма тук съдържа много изрази (показани с удебелен курсив), всеки от които присвоява стойност.

 инт секунди ден = 0;

инт
daysInWeek = 7;

инт
часа в деня = 24;

инт
минутиВ час = 60;

инт
секунди минути = 60; 

булева
CalcuWeek = true;

secondsInDay = секундиInMinute * минутиInHour * часаInDay; //7

System.out.println (
„Броят секунди за ден е:„ + секунди в деня);

ако (
CalcuWeek == true)

{
System.out.println (
„Броят секунди за една седмица е:„ + секунди в деня * дни в седмицата); 

}

Изразите в първите шест реда на кода по-горе, всички използват оператора за присвояване, за да присвоят стойността вдясно на променливата вляво.

Редът, обозначен с // 7, е израз, който може да стои самостоятелно като изявление. Също така показва, че изразите могат да бъдат изградени чрез използването на повече от един оператор. Крайната стойност на променливата секунди InDay е кулминацията на оценяването на всеки израз на свой ред (т.е. секундиInMinute * minutesInHour = 3600, последвано от 3600 * hoursInDay = 86400).

Изрази без резултат

Докато някои изрази не дават резултат, те могат да имат страничен ефект, който възниква, когато изразът промени стойността на който и да е от него операнди.

Например, за някои оператори се счита, че винаги произвеждат страничен ефект, като операторите за присвояване, увеличаване и намаляване. Помислете за това:

int продукт = a * b;

Единствената променлива, променена в този израз, е продуктът; а и б не се променят. Това се нарича страничен ефект.

instagram story viewer